1. Método da declaração de matriz unidimensional:
tipo [] ArrayName; ou digite ArrayName [];
Apêndice: o primeiro formato é recomendado porque o primeiro formato tem melhor legibilidade, indicando que esse tipo [] é um tipo de referência (matriz) em vez de um tipo de tipo. Recomenda -se não usar o segundo método
Aqui está uma maneira típica de declarar matrizes:
// Declare a matriz inteira int [] intray0; int intarray1 []; // declarar a matriz de ponto flutuante float floatArray0 []; float [] floatArray1; // Declare a matriz booleana boolary0 []; booleano [] boolary1; // declarar a matriz de caracteres chararray0 []; char [] CharArray1; // Declare o String Array String StringArray0 []; String [] stringArray1; // declara a matriz de strings string stringArray0 []; String [] stringArray1; // int int interrorArray1 [5];
Nota: Ao declarar uma matriz em Java, ela não pode ser especificada (o número de elementos na matriz). Isso ocorre porque uma matriz é uma variável do tipo de referência. Portanto, ao usá -lo para definir uma variável, isso significa apenas que uma variável de referência é definida (ou seja, um ponteiro é definido). Essa variável de referência ainda não apontou para nenhuma memória válida; portanto, o comprimento da matriz não pode ser especificado ao definir uma matriz. Além disso, como definir uma matriz é apenas uma variável de referência e não aponta para nenhum espaço de memória válido, não há espaço de memória para armazenar elementos da matriz; portanto, essa matriz não pode ser usada e só pode ser usada após a inicialização da matriz.
2. Criação de matrizes unidimensionais
Em Java, use a palavra -chave nova para criar um objeto de matriz, o formato é: nome da matriz = novo tipo de elemento da matriz [número de elementos da matriz]
// Crie uma matriz. Se a matriz não for inicializada ao mesmo tempo, o tamanho deverá ser especificado IntArray0 = new int [3]; // maneira incorreta de criar uma matriz. Se o tamanho não for especificado ao criar uma matriz, o tamanho deverá ser inicializado // intray1 = new int []; // Ao criar uma matriz, se a matriz não for especificada, o tamanho da matriz deverá ser inicializado ao mesmo tempo. intarray1 = new int [] {0,1,2}; Use novo para criar um objeto de matriz, mas ao alocar uma matriz, o valor padrão será atribuído automaticamente à matriz, como segue:
System.out.println ("Intarray0 [0] =" + Intarray0 [0]); floatArray0 = novo float [3]; Sistema. out.println ("floatArray0 [0] =" + floatArray0 [0]); boolarray0 = novo booleano [3]; Sistema. out.println ("boolarray0 [0] =" + boolarray0 [0]); CharArray0 = novo char [3]; Sistema. out.println ("CharArray0 [0] =" + CharArray0 [0]); stringArray0 = new String [3]; Sistema. out.println ("stringArray0 [0] =" + stringArray0 [0]); A saída é a seguinte:
intray0 [0] = 0 floatArray0 [0] = 0,0 boolarray0 [0] = false CharArray0 [0] = stringArray0 [0] = nulo
Anexo: Depois que o espaço de memória é alocado para a matriz usando a nova palavra -chave, o conteúdo armazenado em cada espaço de memória é o valor do elemento da matriz, ou seja, o elemento da matriz tem um valor inicial. Mesmo que o conteúdo armazenado nesse espaço de memória esteja vazio, esse vazio também é um valor nulo. Em outras palavras, é impossível alocar apenas espaço de conteúdo sem atribuir valores iniciais. Mesmo se você não especificar o valor inicial ao criar um objeto de matriz (alocando o espaço de conteúdo), o sistema o alocará automaticamente a ele.
Anexo: por exemplo, os valores de inicialização padrão da classe Wrapper do tipo de dados básicos são nulos, porque a matriz criada pela classe Wrapper do tipo de dados básica pertence à matriz de referência (matriz de objeto) e os valores de inicialização padrão da matriz de objeto são nulos.
3. Inicialização de matrizes unidimensionais
A inicialização de uma matriz é dividida em inicialização estática, inicialização dinâmica e inicialização padrão:
A inicialização estática é quando a matriz é inicializada pelo programador para especificar explicitamente o valor inicial de cada elemento da matriz e o comprimento da matriz é determinado pelo sistema.
A inicialização dinâmica é que, quando uma matriz é inicializada, apenas o comprimento da matriz é especificado e o sistema atribui o valor inicial aos elementos da matriz.
um. Formato de sintaxe para inicialização da matriz estática:
ArrayName = new Type [] {Element1, Element2, Element3 ...} ou use um formato de sintaxe simplificado: Arrayname = {element1, elemento2, elemento3 ...} b. Formato de sintaxe para inicialização de matriz dinâmica:
ArrayName = new Type [Length];
Anexo: O número de elementos não pode ser especificado durante a inicialização estática, mas o número de elementos deve ser especificado durante a inicialização dinâmica. A matriz pode saber o número de elementos durante a inicialização estática, portanto não precisa ser especificada, enquanto o número de elementos na matriz é desconhecido, portanto deve ser especificado.
// Inicialização estática int intarray2 [] = new int [] {20,21,22}; // Método simplificado da inicialização estática int intarray3 [] = {30,31,32}; // Inicialização dinâmica Int [] IntArray4 = new int [3]; // Redação de erro: a inicialização estática não pode especificar o número do número de elementos // [] INTARRAY4 = new Int [3]; int [3] {50,51,52}; // Redação de erros: a inicialização dinâmica deve especificar o número de elementos // int interrorArray6 [] = new int [];Nota: Lembre-se de dois pontos em uma matriz unidimensional. O tamanho não pode ser especificado ao declarar a matriz, o que significa que os colchetes no lado esquerdo do sinal igual não podem conter números. Além disso, depois que a nova palavra -chave é usada, o espaço deve ser alocado para a matriz na memória e a matriz deve ter um valor padrão. Array é um tipo de dados de objeto
Nota: Não use a inicialização estática e a inicialização dinâmica ao mesmo tempo, ou seja, não use a inicialização da matriz novamente, especifique o comprimento da matriz e atribua valores iniciais a cada elemento da matriz.
4. Regras para o sistema atribuir valores iniciais quando as matrizes são inicializadas dinamicamente
O tipo de elemento da matriz é um tipo inteiro (byte, curto, int, longo) no tipo básico; portanto, o valor do elemento da matriz é 0.
O tipo de elemento da matriz é um tipo de ponto flutuante (float, duplo) no tipo básico, portanto o valor do elemento da matriz é 0,0
O tipo de elemento da matriz é um tipo de caractere (char) no tipo primitivo; portanto, o valor do elemento da matriz é '/u0000'
O tipo de elemento da matriz é um booleano no tipo básico, portanto o valor do elemento da matriz é falso
O tipo de elemento da matriz é um tipo de referência (classe, interface, matriz) no tipo básico; portanto, o valor do elemento da matriz é nulo
Anexo: esta parte do código -fonte:
pacote javabase; public class createarray {public static void main (string args []) { / **************************************** / // Declare a matriz inteira int [] intray0; intray1 []; // Declare a matriz de ponto flutuante floatarray0 []; float [] floatArray1; // declarar boolean boolary0 []; booleano [] boolary1; // Declare a matriz de caracteres chararray0 []; char [] CharArray1; // Declare o String Array String StringArray0 []; String [] StringArray1; // maneira incorreta de declarar a matriz, o tamanho não pode ser especificado ao declarar a matriz // int [5] interRorArray0; // interrorArray1 [5]; / ******************************* // maneira incorreta de criar a matriz, se o tamanho não for especificado ao criar a matriz, o tamanho deve ser inicializado // intray1 = new int []; // Ao criar uma matriz, se o tamanho da matriz não for especificado, a matriz deverá ser inicializada ao mesmo tempo em que for criada Intarray1 = new int [] {0,1,2}; out.println ("intray0 [0] =" + IntraRray0 [0]); floatArray0 = novo float [3]; sistema. out.println ("floatArray0 [0] =" + floatArray0 [0]); boolarray0 = novo booleano [3]; sistema. out.println ("boolarray0 [0] =" + boolarray0 [0]); CharArray0 = novo char [3]; sistema. out.println ("CharArray0 [0] =" + CharArray0 [0]); stringArray0 = new String [3]; System. out.println ("stringArray0 [0] =" + stringArray0 [0]); / ****************************** Inicialização da matriz ***************************** // Inicialização estática Método simplificado int intarray3 [] = {30,31,32}; // Inicialização dinâmica int [] intray4 = new int [3]; // Erro de gravação: a inicialização estática não pode especificar o número de elementos // int interrorArray5 [] = new int [3] {50,51,52}; // Erro de gravação: a inicialização dinâmica deve especificar o número de elementos // int interrorArray6 [] = new int []; System. out.println ("intray2 [0] =" +IntraRray2 [0]); System. out.println ("intray3 [0] =" +intray3 [0]); System. out.println ("intray4 [0] =" +intray4 [0]); }}O exposto acima é o resumo de várias maneiras de criar matrizes em Java trouxe para você. Espero que seja útil para você e apoiar mais wulin.com ~