Matrizes em Java

O que é o Java Matrizes?

Java Ordem é um tipo muito comum de estrutura de dados que contém todos os valores de dados do mesmo tipo de dados. Os itens de dados colocados na matriz são chamados de elementos e o primeiro elemento da matriz começa com índice zero. Os arrays herdam a classe do objeto e implementam as interfaces serializáveis ​​e clonáveis. Podemos armazenar valores ou objetos primitivos em um array.

Em palavras simples, é uma construção de programação que ajuda a substituir esta

x0=0;
x1=1;
x2=2;
x3=3;
x4=4;
x5=5;

com isso …

x[0]=0;
x[1]=1;
x[2]=2;
x[3]=3;
x[4]=4;
x[5]=5;

como isso ajuda é que uma variável pode fazer referência ao índice (o número entre colchetes []) para facilitar laço.

for(count=0; count<5; count++) {
     System.out.println(x[count]);
   }

Tipos de Array em Java

Existem dois tipos de array.

  1. Matriz unidimensional
  2. Matriz Multidimensional

Variáveis ​​de matriz

Usar um array em seu programa é uma Processo de 3 etapas -

1) Declarando seu array

2) Construindo sua matriz

3) Inicialize seu array

1) Declarando seu Array

Sintaxe

<elementType>[] <arrayName>;

ou

 <elementType> <arrayName>[];

Exemplo:

int intArray[];
 // Defines that intArray is an ARRAY variable which will store integer values
int []intArray;

2) Construindo uma Matriz

 arrayname = new dataType[]

Exemplo:

intArray = new int[10]; // Defines that intArray will store 10 integer values

Declaração e Construção combinadas

int intArray[] = new int[10];

3) Inicialize um array

intArray[0]=1; // Assigns an integer value 1 to the first element 0 of the array

intArray[1]=2; // Assigns an integer value 2 to the second element 1 of the array

Declarando e inicializando um Array

[]  = {};
Exemplo:
 int intArray[] = {1, 2, 3, 4};
// Initilializes an integer array of length 4 where the first element is 1 , second element is 2 and so on.

Primeiro programa de matriz

Passo 1) Copie o código a seguir em um editor.

class ArrayDemo{
     public static void main(String args[]){
        int array[] = new int[7];
        for (int count=0;count<7;count++){
           array[count]=count+1;
       }
       for (int count=0;count<7;count++){
           System.out.println("array["+count+"] = "+array[count]);
       }
      //System.out.println("Length of Array  =  "+array.length);
      // array[8] =10;
      }
}

Passo 2) Salve, compile e execute o código. Observe a saída

Resultado esperado:

array[0] = 1
array[1] = 2
array[2] = 3
array[3] = 4
array[4] = 5
array[5] = 6
array[6] = 7

Passo 3) Se x é uma referência a um array, x.comprimento lhe dará o comprimento da matriz.

Remova o comentário da linha nº 10. Salve, compile e execute o código. Observe a saída

Length of Array  =  7

Passo 4) Ao contrário de C, Java verifica o limite de um array ao acessar um elemento nele. Java não permitirá que o programador exceda seu limite.

Remova o comentário da linha nº 11. Salve, compile e execute o código. Observe a saída

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 8
        at ArrayDemo.main(ArrayDemo.java:11)
Command exited with non-zero status 1

Passo 5) ArrayIndexOutOfBoundsException é lançada. No caso de C, o mesmo código teria mostrado algum valor lixo.

Java Matriz: Passa por referência

Arrays são passados ​​para funções por referência ou como um ponteiro para
o original. Isso significa que qualquer coisa que você fizer no Array dentro do
função afeta o original.

Exemplo: Para entender Array são passados ​​por referência

Passo 1) Copie o seguinte código em um editor

class ArrayDemo {
   public static void passByReference(String a[]){
     a[0] = "Changed";
   }
 
   public static void main(String args[]){
      String []b={"Apple","Mango","Orange"};
      System.out.println("Before Function Call    "+b[0]);
      ArrayDemo.passByReference(b);
      System.out.println("After Function Call    "+b[0]);
   }
}

Passo 2) Salve, compile e execute o código. Observe a saída

Resultado esperado:

Before Function Call    Apple
After Function Call    Changed

Matrizes multidimensionais

Matrizes multidimensionais são, na verdade, matrizes de matrizes.

Para declarar um array multidimensional variável, especifique cada índice adicional usando outro conjunto de colchetes.

Ex: int twoD[ ][ ] = new int[4][5] ;

Ao alocar memória para uma matriz multidimensional, você só precisa especificar a memória para a primeira dimensão (mais à esquerda).

Você pode alocar as dimensões restantes separadamente.

In Java, o comprimento da matriz de cada matriz em uma matriz multidimensional está sob seu controle.

Exemplo

public class Guru99 {
public static void main(String[] args) {

// Create 2-dimensional array.
  int[][] twoD = new int[4][4];

  // Assign three elements in it.
  twoD[0][0] = 1;
  twoD[1][1] = 2;
  twoD[3][2] = 3;
  System.out.print(twoD[0][0] + " ");
}

}

Resultado esperado:

1