java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > Java集合List转换String字符串

Java将集合List转换成String字符串(或String转换成List)详解

作者:偏爱星雾缠绕15

今天在写项目的时候遇到一个问题,就是要把得到的一个集合转换成字符串,下面这篇文章主要给大家介绍了关于Java将集合List转换成String字符串(或String转换成List)的相关资料,需要的朋友可以参考下

1、将集合list转换成string

将一个Java集合List转换为String很简单,可以使用String.join()或StringBuilder等方法。下面是几个示例:

1.1、使用String.join()方法:

List<String> list = new ArrayList<>();
list.add("A");
list.add("B");
list.add("C");
String joinedString = String.join(", ", list);
System.out.println(joinedString);  // 输出: A, B, C

 1.2、使用StringBuilder:

List<String> list = new ArrayList<>();
list.add("A");
list.add("B");
list.add("C");
StringBuilder sb = new StringBuilder();
for (String str : list) {
    sb.append(str);
    sb.append(", ");
}
sb.setLength(sb.length() - 2);  // 删除最后一个逗号和空格
String joinedString = sb.toString();
System.out.println(joinedString);  // 输出: A, B, C

 1.3、使用Java 8的Stream API (推荐):

List<String> list = new ArrayList<>();
list.add("A");
list.add("B");
list.add("C");
String joinedString = list.stream().collect(Collectors.joining(", "));
System.out.println(joinedString);  // 输出: A, B, C

总结:

以上是转换Java集合List为字符串的几种方法。需要注意的是,当集合中包含null值时,使用String.join()方法将会抛出NullPointerException异常,而使用StringBuilder或Java 8的Stream API则可以正确处理null值。 

2、将string转换成list

将一个逗号分隔的字符串转换为Java集合List也很简单,可以使用String的split()方法或者使用Java 8的Stream API的splitAsStream()方法。下面是两个示例:

2.1、使用String的split()方法:

String str = "A, B, C";
List<String> list = Arrays.asList(str.split("\\s*,\\s*"));
System.out.println(list);  // 输出: [A, B, C]

2.2、 使用Java 8的Stream API的splitAsStream()方法:

String str = "A, B, C";
List<String> list = Pattern.compile("\\s*,\\s*").splitAsStream(str).collect(Collectors.toList());
System.out.println(list);  // 输出: [A, B, C]

总结:

需要注意的是,在使用String的split()方法时,分隔符需要使用正则表达式进行转义,例如上述代码中的"\s*,\s*"表示匹配以逗号为分隔符的字符串,并去除前后空格。使用Java 8的Stream API的splitAsStream()方法则不需要进行转义。

TIP:  以上是将逗号分隔的字符串转换为Java集合List的两种方法。需要注意的是,当字符串中包含空格或其他分隔符时,需要相应地调整分隔符参数的正则表达式

附:java List数组用逗号分隔开,转成字符串

方法一:使用Java 8的Stream流来实现List数组用逗号分隔开,转成字符串,具体实现如下:

List list = new ArrayList();
list.add("a");
list.add("b");
list.add("c");
list.add("d");

String str = list.stream().collect(Collectors.joining(","));

System.out.println(str); //输出结果为 a,b,c,d

方法二:使用Stream的collect方法,结合Collectors.joining方法,可以将List中的元素用指定的分隔符连接起来,生成一个字符串。在上面的代码中,我们使用了逗号作为分隔符,将List中的元素连接成了一个字符串。

另外,如果要在字符串的开头或结尾加上一些额外的字符,可以使用String的concat方法,例如:

String str = ",".concat(list.stream().collect(Collectors.joining(","))).concat(",");
System.out.println(str); //输出结果为 ,a,b,c,d,

以上代码在字符串的开头和结尾加上了逗号,输出结果为 “,a,b,c,d,”。

到此这篇关于Java将集合List转换成String字符串(或String转换成List)的文章就介绍到这了,更多相关Java集合List转换String字符串内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文