Como inicializar um String Array em Java

Hassan Saeed 6 fevereiro 2021 1 novembro 2020 Java Java Array
  1. Inicializar Array para o valor padrão em Java
  2. Inicializar Array para Valores Diretos em Java
  3. Inicializar Array para valores utilizando o Stream em Java
Como inicializar um String Array em Java

Este tutorial introduz métodos para inicializar uma array de strings em Java.

A array Java é de comprimento fixo; portanto, precisamos declarar uma array e inicializá-la para que ela possa alocar o armazenamento de memória correto para os elementos. Se apenas declararmos o array, não há memória alocada para os elementos, e ele irá lançar um erro quando você tentar atribuir um valor a qualquer índice do array.

Inicializar Array para o valor padrão em Java

O exemplo abaixo ilustra como inicializar uma array de String em Java. Ele cria um array com o comprimento especificado contendo os valores padrão null em todos os índices, definidos para o valor desejado mais tarde.

public class MyClass {
    public static void main(String args[]) {
        String[] myArr;
        myArr = new String[5];
        myArr[0] = "First";
        
        for (int i = 0; i < myArr.length; i++){
            System.out.println(myArr[i]);
        }
    }
}

Resultado:

First
null
null
null
null

Reatribuímos o valor no primeiro índice para "First", enquanto todos os outros índices contêm o valor padrão null.

Vamos ver o que acontece se tentarmos atribuir um valor a qualquer índice de array sem inicializar o array.

public class MyClass {
    public static void main(String args[]) {
        String[] myArr;
        myArr[0] = "First";
    }
}

Resultado:

/MyClass.java:4: error: variable myArr might not have been initialized
        myArr[0] = "First";
        ^
1 error

Inicializar Array para Valores Diretos em Java

Também podemos inicializar uma array com os valores que precisamos na array. Neste caso, o comprimento da array seria fixado ao número de elementos para os quais inicializamos a array. O exemplo abaixo ilustra isto:

public class MyClass {
    public static void main(String args[]) {
        String[] myArr = {"First", "Second"};
        
        for (int i = 0; i < myArr.length;  i++){
            System.out.println(myArr[i]);
        }
    }
}

Resultado:

First
Second

O bloco de código acima criou um array de comprimento 2, uma vez que fornecemos 2 valores na inicialização.

Inicializar Array para valores utilizando o Stream em Java

Para Java 8 e acima, podemos fazer uso do Stream para inicializar um array de Strings com determinados valores. O exemplo abaixo ilustra isso:

import java.util.stream.*;
public class MyClass {
    public static void main(String args[]) {
        String[] strings = Stream.of("First", "Second", "Third").toArray(String[]::new);
        for (int i=0; i<strings.length; i++){
            System.out.println(strings[i]);
        }
    }
}

Resultado:

First
Second
Third

Artigo relacionado - Java Array

  • Como concatenar duas arraias em Java
  • Como converter Byte Array em Hex String em Java
  • Remover duplicatas do array em Java
  • Adicionar objetos a uma matriz em Java
  • A função push() em Java
  • Clonar arrays Java