Todos passarão por entrevistas grandes e pequenas. A preparação para entrevistas Java certamente envolverá vários pontos de teste de módulo relativamente grandes. Pode-se dizer que o array é um módulo independente em Java, e os pontos de conhecimento nele contidos formaram uma estrutura de conhecimento completa. Na inspeção real, envolverá discussão de variáveis, aplicação real de algoritmos, etc. Perguntas da entrevista sobre array Java. Traga compartilhamento.
1. Conhecimento básico
1. As variáveis Java precisam ser inicializadas?
incerto. Uma variável de array Java é uma variável de tipo de dados de referência. Não é o próprio objeto de array, desde que a variável de array aponte para um objeto de array válido, a variável de array pode ser usada. Inicializar um array não inicializa a variável do array, mas inicializa o objeto do array - ou seja, aloca um espaço de memória contínuo para o objeto do array, e esse espaço de memória contínuo é o comprimento do array.
2. Todas as variáveis de tipo básico são colocadas na memória da pilha?
errado. Deveria ser dito assim: Todas as variáveis locais são armazenadas na memória da pilha, sejam elas variáveis de tipo básico ou variáveis de tipo de referência, elas são armazenadas em suas respectivas áreas de pilha de métodos, mas os objetos referenciados por variáveis de tipo de referência (incluindo Arrays, comuns); Objetos Java) são sempre armazenados na memória heap.
3. Quando uma variável de referência é apenas a própria variável na memória da pilha e quando ela se torna um objeto Java que faz referência a uma instância?
Uma variável de referência é essencialmente apenas um ponteiro. Contanto que o programa acesse uma propriedade por meio de uma variável de referência ou chame um método por meio de uma variável de referência, a variável de referência será substituída pelo objeto ao qual se refere.
2. Código de exemplo
Girar matriz:
Por exemplo: o elemento na matriz é 123456 e, depois de invertido, é 561234
Dado um array de comprimento n, é necessário mover os últimos k elementos para a frente e os primeiros nk elementos para trás.
//Primeiro, melhore o método na pergunta 1 da entrevista, mude a inversão do início ao fim para a inversão de i para j public int[] changeArray2(int[] array, int i, int j) { temperatura interna = 0; enquanto (eu < j) { temp = matriz[i]; matriz[i] = matriz[j]; matriz[j] = temp; eu++; j--; } //A rotação do array pode ser feita das seguintes maneiras //1. Inverta a primeira metade 2. Inverta a segunda metade 3. Inverta todo o array public int[] swap(int[] array, int k) { int n = array.comprimento - 1;// n=5 changeArray2(matriz, 0, n - k); changeArray2(matriz, n - k + 1, n); alterarArray2(matriz, 0, n); matriz de retorno; } }
A descrição acima é uma exibição de perguntas de entrevista em arrays Java. Ao revisar arrays, você deve ter uma compreensão clara da estrutura de conhecimento mais básica e, ao mesmo tempo, deve levar em consideração alguns pontos de teste fáceis ao revisar.