Java8 List对象中的属性以逗号分隔转字符串

List对象中的属性以逗号分隔转字符串

在Java 8中将集合List转变为用逗号分隔的String是非常简单的,下面看看是如何做到

  1. 我们使用String.join()函数,给函数传递一个分隔符合一个迭代器,一个StringJoiner对象会帮助我们完成所有的事情
List list= Arrays.asList("aaa",  "bbb", "ccc", "ddd");
String str= String.join(",", list);
System.out.println(str);
// str = "aaa,bbb,ccc,ddd";
  1. 如果我们采用流的方式来写,就像下面这样,仍然能够得到同样的结果
List list= Arrays.asList("aaa",  "bbb", "ccc", "ddd");
String str= list.stream().collect(Collectors.joining(","));
System.out.println(str);
// str = "aaa,bbb,ccc,ddd";
  1. 但是如果list集合中是一个对象,可以用下面的方式来处理
List testDemos = new ArrayList();
TestDemo test1 = new TestDemo();
test1.setId(1);
test1.setName("aaa");
testDemos.add(test1);

TestDemo test2 = new TestDemo();
test2.setId(2);
test2.setName("bbb");
testDemos.add(test2);

TestDemo test3 = new TestDemo();
test3.setId(3);
test3.setName("ccc");
testDemos.add(test3);

TestDemo test4 = new TestDemo();
test4.setId(4);
test4.setName("ddd");
testDemos.add(test4);

//将集合中TestDemo 对象name值以逗号方式隔开转为字符串
String names = testDemos.stream().map(TestDemo::getName).collect(Collectors.joining(","));
System.out.println(names);
// names = "aaa,bbb,ccc,ddd";

-----

以上就是List对象中的属性以逗号分隔转字符串的几种方式,不足之处还望指正。

你可能感兴趣的:(Java)