HOWTO · Java

Como converter um Arraylist em uma String em Java

Este post apresenta como converter um arrailista em uma string em Java.

Este tutorial introduz como converter uma ArrayList para uma string em Java e lista alguns exemplos de códigos para entender o tópico. Há várias maneiras de converter a ArrayList como utilizar o método join(), append(), classe StringUtils, etc. Vamos dar uma boa olhada nos exemplos.

Converter a ArrayList em String com + Operador em Java

A maneira mais direta e fácil de converter uma ArrayList em String é usar o operador mais (+). Em String, o operador plus concatena dois objetos string e retorna um único objeto. Aqui, estamos usando o operador plus. Veja o exemplo abaixo.

import java.util.ArrayList;
import java.util.List;

public class SimpleTesting {
  public static void main(String[] args) {
    // ArrayList
    List<String> fruits = new ArrayList<>();
    fruits.add("Apple");
    fruits.add("Orange");
    fruits.add("Mango");
    System.out.println(fruits);
    String str = "";
    for (String fruit : fruits) {
      str += fruit + ",";
    }
    System.out.println(str);
  }
}

Resultado:

[Apple, Orange, Mango]
Apple,Orange,Mango,

Converter ArrayList em String utilizando o append() Método em Java

Podemos utilizar o método append() da classe StringBuilder para converter a ArrayList em string. Este método retorna um objeto String. Veja o exemplo abaixo.

import java.util.ArrayList;
import java.util.List;

public class SimpleTesting {
  public static void main(String[] args) {
    // ArrayList
    List<String> fruits = new ArrayList<>();
    fruits.add("Apple");
    fruits.add("Orange");
    fruits.add("Mango");
    System.out.println(fruits);
    StringBuilder str = new StringBuilder();
    for (String fruit : fruits) {
      str.append(fruit);
      str.append(" ");
    }
    System.out.println(str);
  }
}

Resultado:

[Apple, Orange, Mango]
Apple Orange Mango 

Converter ArrayList em String utilizando o método join() em Java

Podemos utilizar o método de join() da classe String para juntar elementos ArrayList em uma única string. Este método retorna uma string e pode ser utilizado para converter a ArrayList em String em Java.

import java.util.ArrayList;
import java.util.List;

public class SimpleTesting {
  public static void main(String[] args) {
    // ArrayList
    List<String> fruits = new ArrayList<>();
    fruits.add("Apple");
    fruits.add("Orange");
    fruits.add("Mango");
    System.out.println(fruits);
    String str = String.join(",", fruits);
    System.out.println(str);
  }
}

Resultado:

[Apple, Orange, Mango]
Apple,Orange,Mango

Converter ArrayList em String utilizando a classe StringUtils em Java

Se você estiver trabalhando com a biblioteca Apache commons lang, então você pode utilizar o método join() da classe StringUtils para obter um objeto string da ArrayList. Aqui, utilizamos o método join() que leva dois argumentos: ArrayList e o símbolo separador. Veja o exemplo abaixo.

import java.util.ArrayList;
import java.util.List;
import org.apache.commons.lang3.StringUtils;

public class SimpleTesting {
  public static void main(String[] args) {
    // ArrayList
    List<String> fruits = new ArrayList<>();
    fruits.add("Apple");
    fruits.add("Orange");
    fruits.add("Mango");
    System.out.println(fruits);
    String str = StringUtils.join(fruits, ", ");
    System.out.println(str);
  }
}

Resultado:

[Apple, Orange, Mango]
Apple, Orange, Mango

Converter ArrayList em String utilizando o método replaceAll() em Java

Esta é uma abordagem um pouco complicada para obter a seqüência da ArrayList. Desta forma, utilizamos o método replaceAll() para substituir os colchetes da Lista e depois converter todos os elementos em String utilizando o método toString(). Veja o exemplo abaixo.

import java.util.ArrayList;
import java.util.List;

public class SimpleTesting {
  public static void main(String[] args) {
    // ArrayList
    List<String> fruits = new ArrayList<>();
    fruits.add("Apple");
    fruits.add("Orange");
    fruits.add("Mango");
    System.out.println(fruits);
    String str = fruits.toString().replaceAll("\\[|\\]", "").replaceAll(", ", ", ");
    System.out.println(str);
  }
}

Resultado:

[Apple, Orange, Mango]
Apple, Orange, Mango

Converter ArrayList em String utilizando o método joining() em Java

Se você estiver utilizando a versão Java 8 ou superior, você pode utilizar o método joining() da classe Collectors para coletar todos os elementos em um único objeto String. Aqui, utilizamos o estilo funcional de programação Java adicionado à versão Java 8.

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;

public class SimpleTesting {
  public static void main(String[] args) {
    // ArrayList
    List<String> fruits = new ArrayList<>();
    fruits.add("Apple");
    fruits.add("Orange");
    fruits.add("Mango");
    System.out.println(fruits);
    String str =
        Arrays.asList(fruits).stream().map(Object::toString).collect(Collectors.joining(", "));
    System.out.println(str);
  }
}

Resultado:

[Apple, Orange, Mango]
[Apple, Orange, Mango]

Converter ArrayList em String utilizando o método deepToString() em Java

Podemos utilizar o método deepToString() da classe Arrays que converte todos os elementos da ArrayList em um objeto String. Veja o exemplo abaixo.

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

public class SimpleTesting {
  public static void main(String[] args) {
    // ArrayList
    List<String> fruits = new ArrayList<>();
    fruits.add("Apple");
    fruits.add("Orange");
    fruits.add("Mango");
    System.out.println(fruits);
    String str = Arrays.deepToString(fruits.toArray());
    System.out.println(str);
  }
}

Resultado:

[Apple, Orange, Mango]
[Apple, Orange, Mango]