List转变为逗号分隔的String(Java7和Java8分别实现)

 更新时间:2021年06月22日 08:53:51   作者:Arvin627  
这篇文章主要介绍了Java7和Java8分别实现List转变为逗号分隔的String,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

需求:Arrays.asList("AA", "BB") --> "AA,BB"

In Java 8

采用stream的方式

List<String> strList = Arrays.asList("AA", "BB", "CC");
String newStr = strList.stream().collect(Collectors.joining(","));
System.out.println("Output:" + newStr); // Output:AA,BB,CC

使用String.join()函数,给函数传递一个分隔符合一个迭代器,StringJoiner对象会帮助我们完成所有的事情

String newStr = String.join(",", strList);
System.out.println("Output:" + newStr); // Output:AA,BB,CC

In Java 7

Java 7的实现方法

List<String> strList = Arrays.asList("AA", "BB", "CC");
StringBuilder sb = new StringBuilder();
for (int i = 0; i < strList.size(); i++) {
    if (i != 0) {
        sb.append(",");
    }
    sb.append(strList.get(i));
}
System.out.println("Output:" + sb.toString()); // Output:AA,BB,CC

list和以逗号分割的String相互转换(guava)

import com.alibaba.fastjson.JSON;
import com.google.common.base.Joiner;
import com.google.common.collect.Lists;
import com.google.common.base.Splitter;
        List<String> list = Lists.newArrayList("a","b","c"," ");
        String s = Joiner.on(",").join(list); // 以逗号分割
        System.out.println(s); // a,b,c, 
        Splitter split = Splitter.on(',').trimResults().omitEmptyStrings(); // 去前后空格&&去空string
        List<String> list1 = split.splitToList(s);
        System.out.println(JSON.toJSONString(list1)); // ["a","b","c"]

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 完整的logback配置示例ELK整合包含生成json日志

    完整的logback配置示例ELK整合包含生成json日志

    这篇文章主要为大家介绍了完整的logback配置示例ELK整合包含生成json日志,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-03-03
  • Spring Cloud Feign文件传输的示例代码

    Spring Cloud Feign文件传输的示例代码

    微服务中通常使用 Feign 作为服务消费者,那么如何使用 Feign 接口传输文件呢?这篇文章主要介绍了Spring Cloud Feign文件传输的示例代码,感兴趣的小伙伴们可以参考一下
    2018-06-06
  • Java输入输出语句举例详解(通俗易懂!)

    Java输入输出语句举例详解(通俗易懂!)

    这篇文章主要给大家介绍了关于Java输入输出语句的相关资料,作为一种常用的编程语言,Java提供了多种输入输出的方式,用于与用户进行数据交互或处理文件数据,需要的朋友可以参考下
    2023-10-10
  • Java对象存储内存布局详解

    Java对象存储内存布局详解

    众所周知,Java是一门面向对象的语言,那么一个对象在内存中都包含什么东西呢,本文主要详细介绍了Java对象的内存布局,访问定位,创建过程,线程安全,感兴趣的小伙伴可以跟着小编一起来学习
    2023-04-04
  • Java数组的初始化方法详解

    Java数组的初始化方法详解

    在Java程序开发中,数组是一个非常常用的数据类型,数组的初始化是使用数组来存储和处理数据的关键步骤之一,但是,关于Java数组的初始化,经常会让人感到迷惑,本文将详细介绍Java数组的初始化方法,帮助读者从此告别关于Java数组初始化的困惑
    2023-11-11
  • Java实现插入排序算法可视化的示例代码

    Java实现插入排序算法可视化的示例代码

    插入排序的算法描述是一种简单直观的排序算法。其原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。本文将用Java语言实现插入排序算法并进行可视化,感兴趣的可以了解一下
    2022-08-08
  • 全面解析Java观察者模式

    全面解析Java观察者模式

    这篇文章主要帮助大家全面解析Java观察者模式,了解java设计模式中的观察者模式,感兴趣的小伙伴们可以参考一下
    2016-09-09
  • idea远程调试spark的步骤讲解

    idea远程调试spark的步骤讲解

    今天小编就为大家分享一篇关于idea远程调试spark的步骤讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-03-03
  • 新手了解java 反射基础知识

    新手了解java 反射基础知识

    这篇文章主要介绍了Java反射机制的相关内容,涉及了class类的动态加载,获取成员变量、构造函数信息等信息,需要的朋友可以参考下,希望对你有所帮助
    2021-07-07
  • 关于idea无法修改模板中jdk版本问题

    关于idea无法修改模板中jdk版本问题

    这篇文章主要介绍了关于idea无法修改模板中jdk版本问题,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-10-10

最新评论