A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Aula 3 Igor Ebrahim (ies) if669 - Introdução à Programação Monitoria de IP.

Apresentações semelhantes


Apresentação em tema: "Aula 3 Igor Ebrahim (ies) if669 - Introdução à Programação Monitoria de IP."— Transcrição da apresentação:

1 Aula 3 Igor Ebrahim (ies) if669 - Introdução à Programação Monitoria de IP

2 Agenda Declarando e Usando Arrays Arrays de Objetos Arrays Bidimensionais

3 Arrays Arrays são listas ordenadas de valores que permitem armazenar uma grande quantidade de informação; Um array de tamanho N é indexado de 0 a N-1 valores Nome do array inteiro Cada valor tem um índice numérico Esse array guarda 10 valores indexados de 0 a 9

4 Arrays Para referenciar um determinado valor armazenado em um array, usa-se o nome do array seguido do índice entre colchetes; Exemplo: valores[3]; // valor 82  índice 3 Essa expressão representa um inteiro e pode ser usada em qualquer lugar que uma variável de inteiro pudesse também;

5 Arrays Por exemplo, um elemento de array pode receber um valor, ser impresso ou usado em algum cálculo: valores[2] = 89; valores[primeiro] = valores[primeiro] + 2; media = (valores[0] + valores[1])/2; MiniJavaSystem console; console = new MiniJavaSystem(); console.println(“Maior = " + valores[5]);

6 Arrays Os valores guardados no array são chamados de elementos do array; Um array armazena múltiplos valores do mesmo tipo – o tipo do elemento; O tipo do elemento pode ser um tipo primitivo ou uma referência para um objeto; Portanto, podemos criar um array de inteiros, um array de chars, um array de objetos; Em Java, o próprio array é um objeto e precisa ser instanciado;

7 Arrays Outra maneira de descrever um array: valores

8 Declarando Arrays O array valores pode ser declarado assim: int[] valores = new int[10]; O tipo da variável valores é int[] (um array de inteiros); A variável valores referencia um novo objeto array que pode armazenar 10 inteiros; Alguns outros exemplos: float[] precos = new float[500]; boolean[] flags; flags = new boolean[20]; char[] codigo = new char[1750];

9 Usando Arrays public class BasicArray { final static int LIMIT = 15; final static int MULTIPLE = 10; public static void main (String[] args) { int[] list = new int[LIMIT]; // Inicializa os valores do array for (int index = 0; index < LIMIT; index++) list[index] = index * MULTIPLE; for (int index = 0; index < LIMIT; index++) System.out.print (list[index] + " "); System.out.println (); } }

10 Checando os Limites No momento em que o array é criado ele tem seu tamanho fixado; Um índice usado para referenciar um valor do array deve apontar para um elemento válido; Isto é, o índice deve estar no intervalo de 0 a N-1; Caso haja a tentativa de se ler fora do intervalo permitido, Java lança uma exceção ( ArrayIndexOutOfBoundsException );

11 Checando os Limites No momento em que o array é criado ele tem seu tamanho fixado; Um índice usado para referenciar um valor do array deve apontar para um elemento válido; Isto é, o índice deve estar no intervalo de 0 a N-1; Caso haja a tentativa de se ler fora do intervalo permitido, Java lança uma exceção ( ArrayIndexOutOfBoundsException ); Erro comum: for (int index=0; index <= 100; index++) codes[index] = index*50 + epsilon; problema

12 Checando os Limites Cada array tem uma constante pública chamada lenght que armazena o tamanho do array; Ele é usada da seguinte maneira: valores.lenght Note que o lenght armazena o número de elementos e não o maior índice do array;

13 Sintaxe Alternativa Os colchetes podem estar associados ao tipo dos elementos do array ou ao seu nome; Portanto, as duas declarações seguintes são equivalentes: float[] precos; float precos[]; O primeiro formato é mais legível e, por isso, mais usado também.

14 Inicialização Podemos inicializar um array com apenas um passo: int[] units = {147, 323, 89, 933, 540, 269, 97, 114, 298, 476}; char[] letterGrades = {'A', 'B', 'C', 'D', ’F'}; Os valores são delimitados por chaves e separados por vírgulas; Note que desta maneira não o new não é usado e o tamanho não especificado (o tamanho é determinado pelo números de itens na lista); Este tipo de inicialização só pode ser usado na declaração do array;

15 Arrays como Parâmetros Um array inteiro pode ser passado como parâmetro para um método; Assim como os objetos, é passada ao método uma referencia para o array; Portanto, mudando um elemento do array no corpo deste método acarretará a mudança do original; Um único elemento do array também pode ser passado como parâmetro de um método;

16 Arrays de Objetos Os elementos de um array podem ser referências para objetos; A seguinte declaração reserva espaço para armazenar 5 referências para Strings: String[] words = new String[5]; Isto não instancia as Strings. Inicialmente é tudo null; Cada objeto deve ser instanciado separadamente;

17 Arrays de Objetos O array words quando inicializado: words Neste ponto, a seguinte referência lançaria uma NullPointerException : MiniJavaSystem c = new MiniJavaSystem(); c.println (words[0]);

18 Arrays de Objetos Após algumas Strings serem criadas e armazenadas no array; “amizade” words - - “lealdade” “honra”

19 Arrays Bidimensionais Arrays unidimensionais armazenam uma lista de elementos; Arrays bidimensionais podem ser imaginados como uma tabela, com linhas e colunas; unidimensional bidimensional

20 Arrays Bidimensionais Para ser preciso, em Java um array bidimenisonal não nada mais do que um array de arrays; Um array bidimensional pode ser declarado especificando o tamanho de cada dimensão separadamente: int [][] valores = new int[12][30]; O elemento é referenciado usando dois índices: int valor = valores[3][6]; Um array armazenado em uma linha, pode ser referenciado usando um índice: int[] linha = valores[3];


Carregar ppt "Aula 3 Igor Ebrahim (ies) if669 - Introdução à Programação Monitoria de IP."

Apresentações semelhantes


Anúncios Google