Universidade do Vale do Paraíba Colégio Técnico Antônio Teixeira Fernandes Disciplina Programação Orientada a objetos II. Material II-Bimestre - Arrays e manipulação de dados em um Array - Conceitos de Instância de uma Classe. - Funções de Conversão de dados. - Funções Matemáticas. - Funções de Manipulação de datas e Horas. - Funções de Manipulação de String. - Eventos Básicos do teclado. e-mail : http://www1.univap.br/~wagner Prof. Responsáveis Wagner Santos C. de Jesus Conceito de Arrays Array vem a ser uma variável que pode armazenar mais de um elemento. Exemplo : Variável (numero[indice]) 0 3 Numero0 = 3 Numero1 = 8 Numero2 = 18 Numero3 = 34 indice 1 8 2 18 3 34 2 O operador new. Determina a criação de um objeto que poderá ser um Array,Data,Hora,Cor ou Strings ou objetos de funcionamento de um clip. 3 Criando um Array em ActionScript Para se criar um array basta usar um objeto criando elemento em sua Instância.Todo Array em AS vem a ser um objeto manipulador de listas. Sintaxe : Var = new Array(<valor>|<Elementos>); 4 Exemplo de criação de Array lista = new Array(3); lista[0] = 12; lista[1] = 14; lista[2] = 25; for(indice=0;indice<=2;indice++) { s+=lista[indice]; } trace(s); 5 Exemplo: Declaração direta lista = new Array(“Maria”,”Pedro”,”Ana”); for(indice=0;indice<=2;indice++) { trace(lista[indice]); } 6 for/in – percorre em propriedade de um objeto Array. Obj = {........}; for(propertyName in Obj) { ...... <Código programa> } 7 Exemplo de for/in Ob = { nome:"Tchuk", idade: 35, sexo: "Masculino", tipo: "Brinquedo"}; for(propertyName in Ob) { trace("Propriedade: "+propertyName + " com valor: "+Ob[propertyName]) } 8 Manipulado Arrays Para realizar a manipulação de arrays podemos utilizar as variáveis do array mais os métodos. Sintaxe : var = array.metodo([<parâmetro>]); 9 concat():Concatena os elementos em vetor retornando um novo vetor. Sintaxe : <var> = <vetor>.concat(<valor>); Exemplo : pessoa = new Array("Ana","Maria","Roberta","Beatriz"); tam = pessoa.concat(pessoa); variável tam = Ana,Maria,Roberta,Beatriz, Ana,Maria,Roberta,Beatriz 10 join:Insere um elemento ou um conjunto de elementos em uma seqüência de caracteres do vetor. Sintaxe : <var> = <vetor>.join(<valor>); Exemplo : pessoa = new Array("Ana","Maria","Roberta","Beatriz"); nomesjunto= pessoa.join(“Luis”); variável nomesjunto = AnaLuisMariaLuisRobertaLuisBeatriz 11 pop(): Remove o último elemento de um vetor e retorna com esse elemento. Sintaxe : <var> = <vetor>.pop(); Exemplo : pessoa = new Array("Ana","Maria","Roberta","Beatriz"); dado = pessoa.pop(); variável dado = Beatriz Variável pessoa = "Ana","Maria","Roberta" 12 push(): Adiciona um novo valor no final de uma matriz e retorna com o novo tamanho. Sintaxe : <var> = <vetor>.push(<valor>); Exemplo : ano = new Array(2001,2002,2003,2005,2006); tam = ano.push(2007); variável ano = 2001,2002,2003,2005,2006,2007 13 reverse():Inverte a direção do vetor Sintaxe : <vetor>.reverse(); Exemplo : ano = new Array(2001,2002,2003,2005,2006); tam = ano.reverse(); variável ano =2007,2006,2005,2003,2002,2001 14 shift():Remove o primeiro elemento do vetor Sintaxe : <vetor>.shift(); Exemplo : ano = new Array(2001,2002,2003,2005,2006); tam = ano.shift(); variável ano =2002,2003,2005,2006 variável tam = 2001 15 slice():Extrai uma parte do vetor retornando um novo vetor. Sintaxe <vetor>.slice(<expN1>,<expN2>); Exemplo : ano = new Array(2001,2002,2003,2005,2006); tam = ano.slice(1,2); variável tam =2002 16 sort():Ordena um vetor em ordem ascendente (usado para caracteres alfabéticos). Sintaxe <vetor>.sort(); Exemplo : nome = new Array(“Carlos”,”Ana”,”Bernadete”); nome.sort(); variável ano = Ana,Bernadete,Carlos 17 splice():Adiciona ou remove um elemento de um vetor. Sintaxe <vetor>.splice(<expN1>,<expN2>,[<String>]); Exemplo : nome = new Array(“Carlos”,”Ana”,”Bernadete”); nome.splice(4,0,”Walter”); variável ano = Carlos,Ana,Bernadete,Walter 18 unshift():Adiciona um ou mais elementos ao ínico de um vetor e retorna o novo tamanho da matriz Sintaxe : var = <vetor>.unshift(<lista>); Exemplo : lista = new Array(“Fernanda”,”Ana”); x = lista.unshift(“Roberta”,”Mara”); lista = Roberta,Mara,Fernanda,Ana 19 length:propriedade que Retorna o número de elementos contidos em um Array. Sintaxe : var = <vetor>.length; Exemplo : lista = new Array(“Fernanda”,”Ana”); x = lista.length; x=2 20 Funções Matemática e Conversão de dados 21 toString():Retorna com uma string referente a matriz determinada. Sintaxe : var = <tipo>.toString(); Exemplo : var = 123.45; Num = var.toString(); Num = “123.45” 22 Number(): Converte valores do tipo string para números. Sintaxe : Valor = new Number(<ExpN>); Exemplo : valor = new Number(“235.45”); 23 ValueOf():Retorna com o valor do objeto Number. Sintaxe : Valor = new Number(“234.45”); Exemplo : lixo = Valor.ValueOf() + 2; lixo= 236.45 24 Funções Matemáticas Observação: Todas as funções matemática do AS encontram-se na classe Math. Devendo ser usada com a. Seguinte sintaxe: <variável> = Math.método(); 25 Abs():Retorna o valor absoluto de um número. Exemplo : Valor = Math.abs(-3); resultado será Valor = 3 26 sqrt():Retorna a raiz quadrada de um número. Exemplo : Valor = Math.sqrt(49); resultado será Valor = 7 27 round: Arredonda o número para o inteiro mais próximo. Exemplo : Valor = Math.round(49.999); resultado será Valor = 50 28 pow():Eleva uma base a um determinado expoente. Exemplo : Valor = Math.pow(3,2); resultado será Valor = 9 29 PI():Retorna com o valor de PI Exemplo : valor = Math.PI(); resultado será Valor = 3.14159265358979 30 sin():Calcula o seno de um determinado ângulo em radianos. Exemplo : valor = Math.sin(30*Math.PI/180); resultado será Valor = 0.5 31 cos():Calcula o cosseno de um determinado ângulo em radianos. Exemplo : valor = Math.cos(30*Math.PI/180); resultado será Valor = 0.86.... 32 tan():Retorna com a tangente de um número dado pelo teclado. Exemplo : valor = Math.tan(30*Math.PI/180); resultado será Valor = 0.577350 33 log():Retorna logaritmo de um número dados. Exemplo : valor = Math.log(100) * 0.434343; resultado será Valor = 2 34 max():Retorna o valor máximo de dois número dados. Exemplo : valor = Math.max(4,100); resultado será Valor = 100 35 min():Retorna o valor mínimo de dois número dados. Exemplo : valor = Math.min(4,100); resultado será Valor = 4 36 exp():Retorna a potência de (e) elevado a x. Exemplo : valor = Math.exp(1); resultado será Valor = 2.718... 37 random():Retorna um número aleatório entre (0-1) Exemplo : valor = Math.random(); resultado será Valor = 0.9893 38 Manipulação de Strings 39 Sintaxe geral : String.metodo(<lista parametros>); 40 charAt(): Retorna o caractere especificado pelo indice. Exemplo : dado = "Constante" valor =dado.charAt(0); resultado será valor = C 41 concat(): Retorna a concatenação de um conjunto de caracteres dados. Exemplo : dado = "Constituição“; valor =dado.concat(“ Brasileira); resultado será valor = Constituição Brasileira 42 indexOf():Retorna a primeira ocorrência da posição de um caractere especificado. Exemplo : dado = "Constituição“; x = dado.indexOf("s"); resultado será x = 3 43 lasindexOf():Retorna a última ocorrência da posição de um caractere especificado. Exemplo : dado = "Constituição“; x = dado.lastindexOf(“i"); resultado será x = 8 44 slice(): Quebra uma seqüência de caracteres Exemplo : dado = "Constituição“; x = dado.slice(0,3); resultado será x = Con 45 split():Divide uma string em um vetor de caracteres. Exemplo : dado = “Constituição”; x = dado.split(“”); resultado será x = C,o,n,s,t,i,t,u,i,ç,ã,o 46 substring():Retorna com a parte da string especificada. Exemplo : dado = “Constituição”; x = dado.substring(1,2); resultado será x =o 47 toLowerCase():Coloca todos os caracteres de uma string em letras minúsculas. Exemplo : dado = “CONSTITUIÇÃO”; x = dado.toLowerCase(); resultado será x =constituição 48 toUpperCase():Coloca todos os caracteres de uma string em letras minúsculas. Exemplo : dado = “constituição”; x = dado.toUpperCase(); resultado será x =CONSTITUIÇÃO 49 length:propriedade que Retorna o número de caracteres contidos em uma String Sintaxe : var = <String>.length; Exemplo : lista = “Palavras”; x = lista.length; x=8 50 Funções Manipulação de Data e Hora 51 Para manipulação de data e hora é necessário para o objeto a função construtora abaixo. data = new Date( ano,mês -1,dia,hora,min,seg,ms) 52 getDate() : Retornar com um número correspondente ao dia em uma data. Exemplo : data = new Date(); dia = data.getDate(); Retorna com dia = 25 53 getMoth() : Retorna com o mês referente a data. O mês de Janeiro = 0..... Exemplo : data = new Date(2007,04,24); dia = data.getMoth() + 1; Retorna com dia = 4 54 getFullYear() :Retorna o ano com quatro digitos Exemplo : data = new Date(); dia = data.getFullYear(); Retorna com dia = 2007 55 getDay() :Retorna um número de 0 – 6 que representam os dias da semana. Exemplo : data = new Date(); dia = data.getDay(); Retorna com dia = 4 56 setDate() :permite determinar o dia em uma data. Exemplo : data = new Date(); dia = data.setDate(30); Retorna com dia = 30/04/2007 57 setFullYear() :Define o ano com quatro digitos ou a data total. Exemplo : data = new Date(); data.setFullYear(2005); Ou data.setFullYear(2007,3,26); 58 setMonth() :Define o mês em uma data. Com valor do mês (-1) Exemplo : data = new Date(); dia = data.setMonth(5); Retorna com dia = 26/05/2007 59 Manipulando Horas 60 getHours():Retorna com a hora do sistema. Exemplo : hora = new Date(); dia = hora.getHours(); Retorna com dia = 16 horas 61 getMinutes():Retorna os minutos referente a hora. Exemplo : hora = new Date(); dia = hora.getMinutes(); Retorna com dia = 21 Minutos 62 getSeconds():Retorna os segundos referente a hora. Exemplo : hora = new Date(); dia = hora.getSeconds(); Retorna com dia = 20 segundos 63 setHours():Define uma hora. Exemplo : hora = new Date(); hora.setHours(17); trace(hora.getHours()); 64 setMinutes():Define os minutos. Exemplo : hora = new Date(); hora.setMinutes(30); trace(hora.getMinutes()); 65 setSeconds():Define os segundos. Exemplo : hora = new Date(); hora.setSeconds(20); trace(hora.getSeconds()); 66 Eventos Eventos são ações disparadas pelo usuário em um determinado momento. 67 Criando um evento para aplicação em AS Manipulador on() Objeto Controle on() Evento Evento Execução Controle Programa 68 press: Ao Clicar. on (press) { trace("Pressionar"); } 69 release: Ao selecionar e soltar estando no objeto. on (release) { trace(“Ok !!!"); } 70 releaseOutside: Arrastar para qualquer lado. on (releaseOutside) { trace("OK"); } 71 rollOver :Quando mouver o mouse. on (rollOver) { trace("Mouver o Mouse"); } 72 rollOut :Quando mouver o mouse para fora do objeto. on (rollOut) { trace("Quando Mouver para fora"); } 73 dragOut :Arrastar para fora do objeto. on (dragOut) { trace("ok"); } 74 dragOver :Arrastar de dentro para fora. on (dragOver) { trace("Over"); } 75 Manipulador KeyPress – Tecla Pressionada faz a leitura do teclado Objeto Controle on() Evento KeyPress “<Tecla>” Execução Controle Programa 76 Controle do teclado “<Left>” – Pressionar a tecla seta para esquerda. “<Right>” - Pressionar a tecla seta para Direita. “<Home>” - Pressionar a tecla Home. “<End>” - Pressionar a tecla End . “<Insert>” - Pressionar a tecla Inserir. “<Delete>” - Pressionar a tecla Delete. “<BackSpace>” - Pressionar a tecla BackSpace. “<Enter>” - Pressionar a tecla Enter. “<Up>” - Pressionar a tecla Seta para cima. “<Down>” - Pressionar a tecla Seta para baixo. “<PageUp>” - Pressionar a tecla Page Up. <PageDown>” - Pressionar a tecla Page Down. “<tab>” - Pressionar a tecla Tab. “<Escape>” - Pressionar a tecla ESC. “<Space>” – Pressionar a tecla espaço. 77 Manipulador onClipEvent – É executado em tempo concorrente até que um evento seja disparado. onClipEvent() Objeto(Key) Evento isDown(Key.Tecla) Execução Controle Programa 78 Key.ENTER onClipEvent (enterFrame) { if(Key.isDown (Key.ENTER )){ trace(“A tecla Enter foi pressionada"); } } 79 Key.getAscii() – Retorna o código Ascii da tecla pressionada onClipEvent (enterFrame) { trace(Key.getAscii() ); } a = 97 A = 65 80