List与String相互转化方法汇总
List转化为String
下面总结了List转化为String的几种常见的方法,并使用逗号进行分割。
使用String.join()方法
Java 8引入了String.join()
方法,可以将数组或集合以指定的分隔符连接起来形成新的字符串。
ini 代码解读复制代码List<String> list = Arrays.asList("aa", "bb", "cc");
String str = String.join(",", list);
使用StringBuilder
代码语言:javascript复制ini 代码解读复制代码List<String> list = Arrays.asList("aa", "bb", "cc");
StringBuilder sb = new StringBuilder();
for (String s : list) {
sb.append(s).append(",");
}
String str = sb.deleteCharAt(sb.length() - 1).toString();
使用Java 8的Stream API
代码语言:javascript复制ini 代码解读复制代码List<String> list = Arrays.asList("aa", "bb", "cc");
String str = list.stream().collect(Collectors.joining(","));
使用Apache Commons Lang3的StringUtils.join()
方法
Apache Commons Lang3提供了StringUtils.join()
方法,可以将数组或集合以指定的分隔符连接起来形成新的字符串。
引入依赖包:
代码语言:javascript复制xml 代码解读复制代码<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.9</version>
</dependency>
代码语言:javascript复制ini 代码解读复制代码List<String> list = Arrays.asList("aa", "bb", "cc");
String str = StringUtils.join(list, ",");
使用Guava的Joiner.on()
方法
引入依赖包:
代码语言:javascript复制xml 代码解读复制代码<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>19.0</version>
</dependency>
代码语言:javascript复制ini 代码解读复制代码List<String> list = Arrays.asList("aa", "bb", "cc");
String str = Joiner.on(",").join(list);
String转化为List
使用split()
方法
String
类提供了split()
方法,可以根据指定的分隔符将字符串分割成字符串数组。然后,可以使用Arrays.asList()
方法将字符串数组转换为List。
ini 代码解读复制代码String str = "a,b,c";
String[] strs = str.split(",");
List<String> list = Arrays.asList(strs);
使用正则表达式
可以使用正则表达式来匹配字符串中的分隔符,然后将匹配到的字符串分割成List。
代码语言:javascript复制ini 代码解读复制代码String str = "a,b,c";
List<String> list = Pattern.compile(",").splitAsStream(str).collect(Collectors.toList());
使用Apache Commons Lang3的StringUtils.split()
方法
Apache Commons Lang3提供了StringUtils.split()
方法,可以根据指定的分隔符将字符串分割成字符串数组。然后,可以使用Arrays.asList()
方法将字符串数组转换为List。
引入依赖包:
代码语言:javascript复制xml 代码解读复制代码<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.9</version>
</dependency>
代码语言:javascript复制ini 代码解读复制代码String str = "a,b,c";
String[] strs = StringUtils.split(str, ",");
List<String> list = Arrays.asList(strs);
使用Guava的Splitter.on()
方法
Guava提供了Splitter.on()
方法,可以根据指定的分隔符将字符串分割成字符串数组。然后,可以使用Lists.newArrayList()
方法将字符串数组转换为List。
引入依赖包:
代码语言:javascript复制xml 代码解读复制代码<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>19.0</version>
</dependency>
代码语言:javascript复制ini 代码解读复制代码String str = "a,b,c";
List<String> list = Splitter.on(",").splitToList(str);