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

需求: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"]

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

(0)

相关推荐

  • Java8 将List转换为用逗号隔开的字符串的多种方法

    1.使用谷歌的Joiner转换 public static <T> String parseListToStr(List<T> list){ String result = Joiner.on(",").join(list); return result; } 2.使用lambda表达式遍历集合 public static <T> String parseListToStr2(List<T> list){ StringBuffer sb

  • Java StringUtils字符串分割转数组的实现

    我们在日常开发时会经常遇到将一个字符串按照指定的字符进行分割. 这时,我们往往会想到使用str.split(","),进行处理得到分割后的数组. 然而, 使用split()方法在分割特殊的字符时是需要转移的.如小数点"." 下面我为大家推荐一种可以无需转义,即可分割的方法. 使用 org.springframework.util.StringUtils 中的 delimitedListToStringArray(str,delimiter) 进行测试 public

  • Java实现数组转字符串及字符串转数组的方法分析

    本文实例讲述了Java实现数组转字符串及字符串转数组的方法.分享给大家供大家参考,具体如下: 字符串转数组 使用Java split() 方法 split() 方法根据匹配给定的正则表达式来拆分字符串. 注意: . . | 和 * 等转义字符,必须得加 \\.多个分隔符,可以用 | 作为连字符. // 字符串转数组 java.lang.String String str = "0,1,2,3,4,5"; String[] arr = str.split(",");

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

    需求: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(",

  • java如何把逗号分隔的String字符串转int集合

    目录 把逗号分隔的String字符串转int集合 集合或数组转变为逗号分隔的字符串的几种方式 1.自己编码实现 2.org.apache.commons.lang3.StringUtils 3.StringJoiner, JDK1.8+ 4.String.join(), JDK1.8+ 5.Stream, Collectors.joining(), JDK1.8+ 把逗号分隔的String字符串转int集合 代码通过Java 8 Stream实现起来非常容易! String ids = "1,2

  • Java7和Java8中的ConcurrentHashMap原理解析

    Java7 中 ConcurrentHashMap ConcurrentHashMap 和 HashMap 思路是差不多的,但是因为它支持并发操作,所以要复杂一些. 整个 ConcurrentHashMap 由一个个 Segment 组成,Segment 代表"部分"或"一段"的意思,所以很多地方都会将其描述为分段锁.注意,行文中,我很多地方用了"槽"来代表一个 segment. 简单理解就是,ConcurrentHashMap 是一个 Segm

  • 快速入门介绍Java中强大的String.format()

    前言 从 Java 5.0 开始,String 类新增了一个强大的字符串格式化方法 format().这个方法到现在用的人还是不多,实在是一种浪费.本文带你快速过一遍这个方法的功能,将来你要用到格式化文本的时候,可能就不需要再借用第三方类库或自己去实现了. 首先看一个简单例子: String formatted = String.format("%s今年%d岁.", "小李", 30); // "小李今年30岁." 不用我多解释,你也可以看出:

  • .net生成验证码

    本文为大家分享了.net生成验证码所有代码,大家可以动手操作一下,会有意想不到的收获. 先给大家看看效果图: 页面代码: <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title>验证码</title> <script type="text/javascript"> //换一张 function ch

  • 举例讲解Java中数组和字符串类型的使用方法

    Java数组 数组是具有相同数据类型的一组数据的集合,Java支持多为数组,一维数组的每个基本单元都是基本数据类型的数据,二维数组就是每个基本单元是一维数组的一维数组,以此类推,n维数组的每个基本单元都是n-1为数组的n-1维数组.下面以一维数组为例说明Java数组的用法. 1.数组声明 数组声明有如下两种形式(方括号的位置不同): int arr[]; int[] arr2; 2.数组初始化 数组初始化也有两种形式,如下(使用new或不使用new): int arr[] = new int[]

  • 值得收藏的2017年Java开发岗位面试题

    下面是我自己收集整理的2017年Java岗位的面试题,可以用它来好好准备面试. 一.Java基础 1. String类为什么是final的. 2. HashMap的源码,实现原理,底层结构. 3. 说说你知道的几个Java集合类:list.set.queue.map实现类咯... 4. 描述一下ArrayList和LinkedList各自实现和区别 5. Java中的队列都有哪些,有什么区别. 6. 反射中,Class.forName和classloader的区别 7. Java7.Java8的

  • 16 个有用的的Java工具类(小结)

    在Java中,工具类定义了一组公共方法,这篇文章将介绍Java中使用最频繁及最通用的Java工具类.以下工具类.方法按使用流行度排名,参考数据来源于Github上随机选取的5万个开源项目源码. 一. org.apache.commons.io.IOUtils closeQuietly:关闭一个IO流.socket.或者selector且不抛出异常,通常放在finally块 toString:转换IO流. Uri. byte[]为String copy:IO流数据复制,从输入流写到输出流中,最大支

  • Java编程中的性能优化如何实现

      String作为我们使用最频繁的一种对象类型,其性能问题是最容易被忽略的.作为Java中重要的数据类型,是内存中占据空间比较大的一个对象.如何高效地使用字符串,可以帮助我们提升系统的整体性能. 现在,我们就从String对象的实现.特性以及实际使用中的优化这几方面来入手,深入理解以下String的性能优化. 在这之前,首先看一个问题.通过三种方式创建三个对象,然后依次两两匹配,得出的结果是什么?答案留到最后揭晓. String str1 = "abc"; String str2 =

  • spring boot中的条件装配bean的实现

    条件装配 从Spring Framework 3.1开始,允许在Bean装配时增加前置条件判断. 啥是条件装配 在bean装配前的条件判断.比如@Profile(是在spring3.1中引入),@Contditional(spring4.0中引入) 实现方式:注解方式,编程方式. 假设我们现在有一个多数据求和计算的小需求,定义两种方式Java7和Java8,然后使用条件装配的方式分别装配不同的bean. 首先我们定义一个接口 public interface CalculateService {

随机推荐