在Java中将字符列表转换为字符串
给定一个字符列表。编写一个Java程序,将给定的列表转换为字符串。
Input : list = {'g', 'e', 'e', 'k', 's'}
Output : "geeks"
Input : list = {'a', 'b', 'c'}
Output : "abc"
字符串Java中的字符串是 char 数组内部支持的对象。由于数组是不可变的,并且字符串也是一种保存字符的特殊数组,因此,字符串也是不可变的。
List – Java中的 List 实现了管理有序集合的能力。它包括插入、更新、删除和搜索列表元素的基于索引的技术。它也可以有重复的元素。 List 接口位于Java .util包中,继承了Collection 接口。
方法
有许多方法可以在Java中将字符列表转换为字符串。这些都是 -
- 使用 StringBuilder 类
- 使用 Joiner 类的 join() 方法
- 使用 List.toString()、String.substring() 和 String.replaceAll() 方法
- 使用收集器
1.使用StringBuilder类
一个简单的解决方案是遍历列表并在 StringBuilder 类的帮助下创建一个新字符串,如下所示:
Java
// Java program for convert character list to string
import java.util.Arrays;
import java.util.List;
// Convert List of Characters to String in Java
class GFG {
public static void main(String[] args)
{
// create character list and initialize
List str
= Arrays.asList('G', 'e', 'e', 'k', 's');
System.out.println("List - " + str);
// create object of StringBuilder class
StringBuilder sb = new StringBuilder();
// Appends characters one by one
for (Character ch : str) {
sb.append(ch);
}
// convert in string
String string = sb.toString();
// print string
System.out.println("String - " + string);
}
}
Java
// Java program for convert character list to string
import com.google.common.base.Joiner;
import java.util.*;
// Convert List of Characters to String in Java
class GFG {
public static void main(String[] args)
{
// create character list and initialize
List str
= Arrays.asList('G', 'e', 'e', 'k');
System.out.println("List - " + str);
// convert in string
// use join() method
String string = Joiner.on("").join(str);
// print string
System.out.println("String - " + string);
}
}
Java
// Java program for convert character list to string
import java.util.*;
// Convert List of Characters to String in Java
class GFG {
public static void main(String[] args)
{
// create character list and initialize
List str
= Arrays.asList('G', 'e', 'e', 'k');
System.out.println("List - " + str);
// convert in string
// remove [] and spaces
String string = str.toString()
.substring(1, 3 * str.size() - 1)
.replaceAll(", ", "");
// print string
System.out.println("String - " + string);
}
}
Java
// Java program for convert character list to string
import java.util.*;
import java.util.stream.Collectors;
// Convert List of Characters to String in Java
class GFG {
public static void main(String[] args)
{
// create character list and initialize
List str
= Arrays.asList('G', 'e', 'e', 'k');
System.out.println("List - " + str);
// convert in string
// using collect and joining() method
String string = str.stream()
.map(String::valueOf)
.collect(Collectors.joining());
// print string
System.out.println("String - " + string);
}
}
输出
List - [G, e, e, k, s]
String - Geeks
2.使用Joiner类的join()方法
Joiner 类可用于将片段连接到指定为数组的文本,并将结果作为字符串返回。这种方法也称为番石榴法。
Java
// Java program for convert character list to string
import com.google.common.base.Joiner;
import java.util.*;
// Convert List of Characters to String in Java
class GFG {
public static void main(String[] args)
{
// create character list and initialize
List str
= Arrays.asList('G', 'e', 'e', 'k');
System.out.println("List - " + str);
// convert in string
// use join() method
String string = Joiner.on("").join(str);
// print string
System.out.println("String - " + string);
}
}
输出
List - [G, e, e, k]
String - Geek
3. 使用 List.toString()、String.substring() 和 String.replaceAll() 方法
列表上的 toString() 方法返回一个用方括号括起来的字符串,并且项目之间有逗号。想法是使用 substring() 方法去除方括号,使用 replaceAll() 方法替换逗号和空格。
上述方法的实现如下 -
Java
// Java program for convert character list to string
import java.util.*;
// Convert List of Characters to String in Java
class GFG {
public static void main(String[] args)
{
// create character list and initialize
List str
= Arrays.asList('G', 'e', 'e', 'k');
System.out.println("List - " + str);
// convert in string
// remove [] and spaces
String string = str.toString()
.substring(1, 3 * str.size() - 1)
.replaceAll(", ", "");
// print string
System.out.println("String - " + string);
}
}
输出
List - [G, e, e, k]
String - Geek
4.在Java中使用收集器
在Java 8 中,我们可以使用带有收集器的流 API。
实现上述方法:
Java
// Java program for convert character list to string
import java.util.*;
import java.util.stream.Collectors;
// Convert List of Characters to String in Java
class GFG {
public static void main(String[] args)
{
// create character list and initialize
List str
= Arrays.asList('G', 'e', 'e', 'k');
System.out.println("List - " + str);
// convert in string
// using collect and joining() method
String string = str.stream()
.map(String::valueOf)
.collect(Collectors.joining());
// print string
System.out.println("String - " + string);
}
}
输出
List - [G, e, e, k]
String - Geek