guava技巧

StringJoiner 应用场景:sql 的in条件拼接

你只会用 StringBuilder?试试 StringJoiner,真香!

在使用拼间多个相同的分隔符时,使用 StringJoiner ,

头尾包含,且间隔的

 public static void main(String[] args) {
        StringJoiner stringJoiner = new StringJoiner(",", "[", "]");// 对新增的字符串用逗号间隔,用[]作为收尾包含
        stringJoiner.add("hello");
        stringJoiner.add("guys");
        stringJoiner.add("欢迎关注公众号Java技术栈");
        System.out.println(stringJoiner.toString()); 
        //输出   [hello,guys,欢迎关注公众号Java技术栈]
    }

只有间隔的

public static void main(String[] args) {
        StringJoiner stringJoiner = new StringJoiner(",");//用逗号间隔新增的字符串
        stringJoiner.add("hello");
        stringJoiner.add("guys");
        stringJoiner.add("欢迎关注公众号Java技术栈");
        System.out.println(stringJoiner.toString()); 
        //输出    hello,guys,欢迎关注公众号Java技术栈
    }

创建集合

// 普通Collection的创建
List<String> list = Lists.newArrayList();
Set<String> set = Sets.newHashSet();
Map<String, String> map = Maps.newHashMap();

// 不变Collection的创建
ImmutableList<String> iList = ImmutableList.of("a", "b", "c");
ImmutableSet<String> iSet = ImmutableSet.of("e1", "e2");
ImmutableMap<String, String> iMap = ImmutableMap.of("k1", "v1", "k2", "v2");

ImmutableList    (Immutable 不可变的)

使用场景:多线程下安全,如果想改变 考虑  copyAndWriter 机制:即构建一个新的list,再将旧引用指向 该新list。可以应对高并发的读写,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值