Matriz vazia em Java
Este tutorial apresenta a diferença entre um array nula e um array vazia em Java e também lista alguns códigos de exemplo para entender o tópico.
um array que aponta para a referência nula é chamada de array nula em Java, enquanto um array que não possui referência nula, mas inicializada com valores padrão, é chamada de array vazia. Embora estes não sejam termos padrão, mas mais técnicos.
Em Java, array é um objeto e se declararmos apenas um array, esse objeto aponta para uma referência nula na memória. Uma declaração de array típica se parece com: int[] arr;
.
A criação do array é uma combinação de declaração e inicialização (também chamada de criação), portanto, se apenas declararmos a matriz sem inicialização, a matriz será chamada de array nula e um array declarada e inicializada por valores padrão será chamada de array vazia. Uma criação típica de array é como: int[] arr = new int[5];
.
Vamos entender e dar uma olhada em alguns exemplos.
Criar matriz vazia em Java
Como já discutimos, um array que é criado e inicializado com valores padrão pelo compilador é conhecido como array vazio. Os valores padrão dependem do tipo de array. Por exemplo, o valor padrão para array de inteiros é 0 and 0.0 para o tipo float.
Vamos dar um exemplo, onde estamos criando um array de tipo inteiro. Esta matriz manterá os valores padrão. Vamos verificar imprimindo o array.
public class SimpleTesting {
public static void main(String[] args) {
int[] arr = new int[10];
System.out.println(arr[0]);
}
}
Resultado:
0
Matriz nula em Java
Neste exemplo, estamos criando um array que contém um valor nulo. Basicamente, um array que é declarada apenas também contém nulo. Portanto, tome cuidado se a matriz for nula, pois o acesso a seus elementos gerará uma exceção. Veja o exemplo abaixo.
public class SimpleTesting {
public static void main(String[] args) {
int[] arr = null;
System.out.println(arr[0]); // null pointer exception
}
}
Resultado:
Exception in thread "main" java.lang.NullPointerException
Manipulação de NullPointerException em Java Array
Neste exemplo, estamos tratando da exceção que ocorre se a matriz não for criada.
public class SimpleTesting {
public static void main(String[] args) {
try {
int[] arr = null;
System.out.println(arr[0]); // null pointer exception
} catch (Exception e) {
System.out.println("Array is Null");
}
}
}
Resultado:
Array is Null