java8实现Joiner:数组集合转换字符串

集合转换字符串,逗号分割

//集合遍历
 public static String split(List<String> list) {
        StringBuilder str = new StringBuilder();
        for (String s : list) {
            if (StrUtil.isNotBlank(str)) {
                str.append(",");
            }
            str.append(s);
        }
        return str.toString();
    }

//使用 Joiner //package com.google.common.base;
 String join = Joiner.on(",").join(list);

过滤null

//去除null
Joiner.on(",").skipNulls().join(arr);
//替换null
Joiner.on(",").useForNull("null").join(arr);

Joiner提供了Map的join功能

Map<String, String> params = new HashMap(8);
       params.put("appid", "appid");
       params.put("secret", "secret");
       params.put("js_code", "jsCode");
       params.put("grant_type", "authorization_code");
       String join1 = Joiner.on("&").withKeyValueSeparator("=").join(params);
       System.out.println("join1 = " + join1);
       //join1 = js_code=jsCode&secret=secret&grant_type=authorization_code&appid=appid

把(数组)和(集合)结果放入到StringBuilder or StringBuffer中

	StringBuilder builder = new StringBuilder();
	StringBuilder resultBuilder = Joiner.on(",").appendTo(builder, arr);

stream流

	String collect = arr.stream().collect(Collectors.joining(","));

String

	String collect = String.join(",", arr);

StringJoiner

 		StringJoiner joiner = new StringJoiner(",");
        joiner.add("usr");
        joiner.add("local");
        joiner.add("bin");
        System.out.println("joiner = " + joiner);//joiner = usr,local,bin

[源码分析]StringJoiner的使用以及源码分析

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值