Acessando Elementos de Arrays 2D
Parte da seção Lógica e Fluxo do Journey de Java da Coddy — lição 2 de 59.
Acessar elementos em um array 2D é semelhante a acessar elementos em um array 1D, mas em vez de usar um único índice, você usa dois índices: um para a linha e um para a coluna. Lembre-se de que os índices em Java começam em 0, então a primeira linha está no índice 0, a segunda linha no índice 1, e assim por diante. Da mesma forma, a primeira coluna está no índice 0, a segunda coluna no índice 1, e por diante.
Para acessar um elemento, você primeiro especifica o índice da linha e depois o índice da coluna, usando a seguinte sintaxe:
arrayName[rowIndex][columnIndex]Por exemplo, para acessar o elemento na segunda linha (índice 1) e terceira coluna (índice 2) de um array 2D chamado matrix, você escreveria:
int element = matrix[1][2];Isso atribuiria o valor do elemento na linha 1, coluna 2 à variável element.
Obtendo dimensões de array 2D:
Assim como arrays 1D, você pode usar .length para obter dimensões de um array 2D:
int[][] matrix = {
{1, 2, 3},
{4, 5, 6}
};
int numRows = matrix.length; // Obtém o número de linhas: 2
int numCols = matrix[0].length; // Obtém o número de colunas: 3matrix.lengthretorna o número de linhasmatrix[0].lengthretorna o número de colunas na primeira linha
Verificando limites:
Antes de acessar um elemento, é uma boa prática verificar se os índices são válidos:
if (rowIndex >= 0 && rowIndex < matrix.length &&
colIndex >= 0 && colIndex < matrix[0].length) {
// Safe to access matrix[rowIndex][colIndex]
}Desafio
FácilCrie um método chamado getElement que recebe três argumentos:
- Um array 2D de inteiros chamado
matrix. - Um inteiro
rowIndexrepresentando o índice da linha. - Um inteiro
colIndexrepresentando o índice da coluna.
O método deve retornar o elemento na linha e coluna especificadas na matrix. Se o rowIndex ou colIndex estiver fora dos limites (ou seja, menor que 0 ou maior ou igual ao número de linhas ou colunas), o método deve retornar -1.
Folha de consulta
Para acessar elementos em um array 2D, use dois índices: um para a linha e um para a coluna. Os índices começam em 0.
Sintaxe:
arrayName[rowIndex][columnIndex]Exemplo:
int element = matrix[1][2]; // Obtém o elemento na linha 1, coluna 2você pode usar .length para obter as dimensões de um array 2D:
int[][] matrix = {
{1, 2, 3},
{4, 5, 6}
};
int numRows = matrix.length; // Obtém o número de linhas: 2
int numCols = matrix[0].length; // Obtém o número de colunas: 3Experimente você mesmo
// Escreva seu código apenas dentro da classe. Não escreva main() ou qualquer código fora desta classe.
class GetElement {
public static int getElement(int[][] matrix, int rowIndex, int colIndex) {
// Escreva seu código aqui
}
}Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Lógica e Fluxo
1Arrays Multidimensionais
Básicos de Arrays 2DAcessando Elementos de Arrays 2DLoops Aninhados com Arrays 2DResumo - Arrays 2DAdição e Subtração de MatrizesArrays EscalonadosArrays 3D e AlémPadrões Comuns de Arrays 2DResumo - Tudo Sobre Arrays2HashMap Parte 1
O que é um HashMap?Declarar um HashMapAcessando ValoresVerificar se a Chave ExisteModificando DicionáriosResumo - HashMap3HashMap Parte 2
Métodos do HashMapIterar com keySet()Iterar com entrySet()HashMap AninhadoResumo - Gerenciar ArmazémResumo - Operações do HashMap6Fluxo de Controle Avançado
Declarações RotuladasExpressão SwitchCorrespondência de PadrõesCláusulas de GuardaResumo - Fluxo de Controle9Projeto - Contador de Palavras Únicas
Entrada e Armazenamento de TextoProcessamento de Palavras