假如现在有一个字符串的集合,需要把它用某个分隔符拼接成一个字符串; 通常的做法是,在循环中拼接分隔符,需要判断集合长度,并且最后截取掉最后一个分隔符;这样是不是很麻烦呀,接下来介绍几个方法能让你快速处理这样的需求;
StringJoiner
StringJoiner stringJoiner = new StringJoiner(",");
List<String> list = new ArrayList<>();
int limit = 65, step = 26;
for (int i = 0; i < step; i++) {
String letter = String.valueOf((char) (limit + i));
list.add(letter);
stringJoiner.add(letter);
}
System.out.println(stringJoiner);
输出结果:A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z
String.join()
// string自有方法
String join1 = String.join(",", list);
System.out.println(join1);
输出结果:A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z
StringUtils.join()
String join2 = StringUtils.join(list, ",");
System.out.println(join2);
输出结果:A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z
基于stream的Collectors.joining()
String join3 = list.stream().collect(Collectors.joining(","));
System.out.println(join3);
输出结果:A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z