Fala rapazeada…
Faz tempo que não apareço por aqui hein.
Mas vim trazer uma coisa que me pegou desprevinido quando eu estava dando aula ontem.
[code] public static void main(String[] args) {
String teste[];
teste[0]="teste";
}[/code]
Como declarar um array sem precisar informar o tamanho do mesmo?
Para minha surpresa o código acima dá erro de compilação.
O Erro diz:
Variable teste might not have been initialized.
teste[0]=“teste”;
Eu poderia usar
[code] public static void main(String[] args) {
String teste[] = null;
teste[0]="teste";
}[/code]
Esse código compila, porém gere uma NullPointerException em runtime.
Esse outro só compila se eu colocar o tamanho do array instanciação.
[code] public static void main(String[] args) {
String teste[] = new String[12];
teste[0]="teste";
}[/code]
Mas se eu for usar isso em um loop onde não sei quantos elementos vou adicionar no array, pode gerar um ArrayOutOfBoundException.
Lembrando que não tenho ideia do tamanho do array na hora de instanciação, e supondo que eu não possa usar uma collection ou coisa do tipo.
Alguém consegue achar uma solução? Será que o java não consegue contornar esse problema?
abração folks…