当前位置: 首页 > article >正文

Java之字符串分割转换List

Java之字符串分割转换List

字符串分割成数组然后转换成List有多种方式,以下是每种方式的示例,推荐Java8的新特性Stream。

使用Java8的新特性Stream API

String str = "aaa,bbb,ccc";  
// 使用Arrays.stream()  
List<String> list1 = Stream.of(str.split(",")).collect(Collectors.toList());  

// 使用Pattern.compile()与splitAsStream()  
List<String> list2 = Pattern.compile(",").splitAsStream(str).collect(Collectors.toList());  	

Arrays.asList()方法

String str = "aaa,bbb,ccc";  
List<String> list = Arrays.asList(str.split(","));

//注意:Arrays.asList()返回的List是固定大小的,不支持添加或删除元素。
//如果需要可变的List,可以将其转换为ArrayList。
List<String> mutableList = new ArrayList<>(Arrays.asList(str.split(",")));

Guava库

1,maven添加依赖

<!-- Maven依赖 -->  
<!-- https://mvnrepository.com/artifact/com.google.guava/guava -->
<dependency>
    <groupId>com.google.guava</groupId>
    <artifactId>guava</artifactId>
    <version>33.3.1-jre</version>
</dependency>

2,java代码

String str = "aaa,bbb,ccc";
Iterable<String> iterable = Splitter.on(',').trimResults().split(str);  
List<String> list = Lists.newArrayList(iterable);

Apache Commons Lang库

1,maven添加依赖

<!-- https://mvnrepository.com/artifact/org.apache.commons/commons-lang3 -->
<dependency>
    <groupId>org.apache.commons</groupId>
    <artifactId>commons-lang3</artifactId>
    <version>3.17.0</version>
</dependency>

2,java代码

String str = "aaa,bbb,ccc";
String[] array = StringUtils.split(str, ',');  
List<String> list1 = Arrays.asList(array); // 固定大小的List  
// 或者  
List<String> list2 = new ArrayList<>(Arrays.asList(array)); //可变的List  

http://www.kler.cn/a/383284.html

相关文章:

  • (六)循环神经网络_基本的RNN
  • 前端Python应用指南(三)Django vs Flask:哪种框架适合构建你的下一个Web应用?
  • Docker数据库的主从复制
  • Android Jetpack常用组件‌
  • 【软考高级】系统架构设计师复习笔记-精华版
  • 基于Spring Boot的工商局商家管理系统
  • faiss用于大数据量的向量检索
  • vm虚拟机中添加网卡却在network-scripts文件找不到,解决方法
  • vue中的nextTick() - 2024最新版前端秋招面试短期突击面试题【100道】
  • IDEA2024下安装kubernetes插件并配置进行使用
  • Spring源码(十一):Spring MVC之DispatchServlet
  • WPF+MVVM案例实战(二十)- 制作一个雷达辐射效果的按钮
  • Ubuntu 安装Nvidia 显卡驱动
  • 新能源汽车空调压缩机:科技驱动的冷暖核心
  • 深度学习:循环神经网络(RNN)详解
  • 深度学习:Cross-attention详解
  • SpringMvc day1101
  • 基于布局的3D场景生成技术:SceneCraft
  • 美创科技以韧性数据安全防护体系助力畜牧业数字化发展
  • 计算机专业开题报告写法,该怎么写好?
  • 头歌——机器学习(线性回归)
  • NewStarCTF2024-Week5-WebMisc-WP
  • yolov8涨点系列之轻量化主干网络替换
  • Android中的跨进程通信方案总结一-AIDL运行原理
  • 机器学习—构建一个神经网络
  • 新能源汽车的未来:车载电源与V2G技术的前景