Laboratrio I Mateus Raeder Arrays unidimensionais Arrays unidimensionais
Laboratório I Mateus Raeder
Arrays unidimensionais § Arrays unidimensionais são objetos que permitem ao programador armazenar diversas variáveis do mesmo tipo § Estas variáveis podem ser tanto tipos primitivos (int, char, . . . ) como outros objetos Array de “int” 0 1 2 3 4 5 6 7 8 9 Array de “char” A B C D E F G H I J Ana Rick André Rê Sofia José Milton Array de “Pessoa” Mateus Raeder – maio de 2010 Pedro João Maria
Arrays bidimensionais § A estrutura de arrays bidimensionais, também permite o armazenamento de diversas variáveis, porém, com uma estrutura similar a uma matriz: § Estas variáveis podem ser tanto tipos primitivos (int, char, . . . ) como outros objetos Mateus Raeder – maio de 2010
Arrays bidimensionais Array bidimensional de int 1 4 8 0 67 9 1 8 7 8 0 23 1 12 0 0 1 4 8 0 67 9 1 8 55 86 10 23 19 12 132 0 5 6 9 7 23 4 4 2 Array bidimensional de boolean true true false true false true Array bidimensional de Pessoa Antonio Luiz Mateus Raeder – maio de 2010 Diego Dover Maycon Michele Jefferson Karoline Leonardo Pedro Rafael Rovian Shayane
Arrays bidimensionais § Cada item do array bidimensional é chamado de elemento § Os elementos de um array bidimensional são associados a uma posição numérica (um par de valores) “colunas” do array 0 0 “linhas” do array 1 Antonio Luiz 1 2 Diego Dover Maycon Michele 3 4 5 6 Jefferson Karoline Leonardo Pedro Rafael Rovian Shayane 2 linhas por 7 colunas § Um array bidimensional pode ser visto como um array de arrays Mateus Raeder – maio de 2010
Declarando arrays bidimensionais § Arrays bidimensionais armazenam variáveis de um determinado tipo, e sua declaração ocorre da mesma forma de uma variável “comum”, porém utilizando um par de “[ ]” (colchetes) para a sua identificação. int[][] valor. Total; tipo do array nome do array ou int valor. Total[][]; § Desta forma, arrays de qualquer tipo podem ser declarados: char[][] char. Array; String[][] string. Array; double[][] double. Array; float[][] float. Array; Mateus Raeder – maio de 2010 boolean[][] boolean. Array; long[][] long. Array; byte[][] byte. Array; short[][] short. Array;
Declarando arrays bidimensionais Exemplos: int[][] tamanho; //declara um array de inteiro double[][] nota; //declara um array de double char[][] letra; //declara um array de char Pessoa[][] p 1; //declara um array de Pessoa Carta[][] c 1; //declara um array de Carta Mateus Raeder – maio de 2010
Declarando e inicializando arrays bidimensionais § Porém, declarar um array bidimensional não significa criá-lo efetivamente para utilização. § A declaração indica ao compilador que existe um array bidimansional de determinado tipo e com determinado nome. § Após a declaração, como fazer com que um array possa ser utilizado? indicar a quantidade de elementos do array bidimansional valor. Total = new int[10][2]; cria o array Mateus Raeder – maio de 2010 número de linhas número de colunas
Inicializando arrays bidimensionais Exemplos: int[][] tamanho = new int[4][4]; tamanho int[] double[][] nota = new double[3][3]; char[][] letra = new char[23][2]; Pessoa[][] p 1 = new Pessoa[2][7]; Carta[][] c 1 = new Carta[4][48]; Mateus Raeder – maio de 2010 0 1 2 3
Inicializando arrays bidimensionais § É aconselhável inicializar os valores de cada elemento do array de acordo com a necessitade/vontade, atribuindo valores para todos os seus elementos: valor. Total[0][0] = 26; valor. Total[0][1] = 296; valor. Total[0][2] = 11; . . . valor. Total[9][9] = 1997; ou for(int linha=0; linha<10; linha++) for(int coluna=0; coluna<10; coluna++) valor. Total[linha][coluna] = 0; § Pode-se também declarar, criar e inicializar arrays diretamente, da seguinte forma: int[][] valor. Total = {{26, 296, 11}, {34, 58, 98}, {114, 754, 236}}; Mateus Raeder – maio de 2010
Inicializando arrays bidimensionais de Objetos § Ao declarar e inicializar um array bidimensional de objetos, cada posição comporta-se como uma variável normal, ou seja, deve ser inicializada Exemplo: Pessoa[][] p = new Pessoa[2][7]; for(int linha=0; linha<2; linha++) for(int coluna=0; coluna<7; coluna++) p[linha][coluna] = new Pessoa(); Mateus Raeder – maio de 2010
Acessando elementos em arrays bidimensionais § Os elementos do array bidimensionais são, então, acessados através de suas posições numéricas, que são pares numéricos: Array de String chamado pessoa Antonio Luiz Diego Dover Maycon Michele Jefferson Karoline Leonardo Pedro Rafael Rovian Shayane System. out. println(“Valor da primeira posição é = ”+pessoa[0][0]); System. out. println(“Valor da última posição é = ”+pessoa[1][7]); String aux = pessoa[1][2]; for(int linha=0; linha<2; linha++) for(int coluna=0; coluna<7; coluna++) System. out. println(“Posição [”+linha+”][+coluna+”] é ”+pessoa[linha][coluna]); Mateus Raeder – maio de 2010
Acessando elementos em arrays bidimensionais § Um array unidimensional possui a variável length, que retorna a quantidade de elementos do array. Assim, sabemos a quantidade de elementos do array. for(int i=0; i<array. length; i++) § Entretanto, como saber as dimensões de um array bidimensional? § Como saber a quantidade de linhas? § Como saber a quantidade de colunas? Mateus Raeder – maio de 2010
- Slides: 13