Java编程界里google轮子跑的又快又安全,干嘛不用呢

我是Java程序员我用google的guava包我骄傲

google万能工具

com.google.guava

guava

17.0

Splitter

业务代码中字符拆分

  • omitEmptyStrings 过滤空字符
  • trimResults 过滤字符前后的空字符

List list=Splitter.on(",").splitToList("aaa, bbb ,ccc,,,");

System.out.println("不完美:" + list);

//-----------------分割线----------------------------

List list2=Splitter.on(",").omitEmptyStrings().trimResults()

.splitToList("aaa, bbb ,ccc,,,");

System.out.println("完美:" + list2);

比较下输入结果

Java编程界里google轮子跑的又快又安全,干嘛不用呢

Joiner

List names=Lists.newArrayList("a","b","c",null);

System.out.println(Joiner.on(",").skipNulls().join(names));

输出,完美过滤null

a,b,c

Strings

防NPE利器

System.out.println("nullToEmpty:"+Strings.nullToEmpty(null));

ImmutableSet

不可变的集合,初始化数据非常安全,不怕乱改

public static Set operates= new ImmutableSet.Builder()

.add("ADD")

.add("MODIFY")

.add("DELE")

.add("QUERY").build();

set的交差并集

业务代码很方便

HashSet setF = Sets.newHashSet(1, 2, 3);

HashSet setT = Sets.newHashSet(3, 4, 5);

//并集:结果【1,2,3,4,5】

Sets.SetView union = Sets.union(setF, setT);

//差集:返回只存在于setF独有的数据, 结果【1,2】

Sets.SetView difference = Sets.difference(setF, setT);

//交集:结果【3】

Sets.SetView intersection = Sets.intersection(setF, setT);

输出

if(intersection.size()>0){

System.out.println("有交集元素");

}else{

System.out.println("无交集元素");

}

System.out.println("并集:");

for (Integer integer : union) {

System.out.println(integer);

}

System.out.println("差集:");

for (Integer integer : difference) {

System.out.println(integer);

}

System.out.println("交集:");

for (Integer integer : intersection) {

System.out.println(integer);

}

1

1

Preconditions

异常严重工具

Preconditions.checkArgument(StringUtil.isNotBlank(outerWhiteListId), "白名单Id为空");

1

1


分享到:


相關文章: