zoukankan      html  css  js  c++  java
  • Guava的一些总结

         guava是java API蛋糕上的冰激凌(精华).

         源码包的简单说明: 
      com.google.common.annotations:普通注解类型。 
      com.google.common.base:基本工具类库和接口。 
      com.google.common.cache:缓存工具包,非常简单易用且功能强大的JVM内缓存。 
      com.google.common.collect:带泛型的集合接口扩展和实现,以及工具类,这里你会发现很多好玩的集合。 
      com.google.common.eventbus:发布订阅风格的事件总线。 
      com.google.common.hash: 哈希工具包。 
      com.google.common.io:I/O工具包。 
      com.google.common.math:原始算术类型和超大数的运算工具包。 
      com.google.common.net:网络工具包。 
      com.google.common.primitives:八种原始类型和无符号类型的静态工具包。 
      com.google.common.reflect:反射工具包。 
      com.google.common.util.concurrent:多线程工具包。

         现在针对每个包的类现在进行测试。

         com.google.common.base:基本工具类库和接口        

                                                Ascii:针对ASCII码的处理,比较实用的方法有:

                                                         toLowerCase(String param):将传入的param的字符处理为小写。

                                                         toUpperCase(String param):将传入的param的字符处理为大写。

                                                         truncate(CharSequence seq, int maxLength, String indicator):将seq的字符串截断衔接上indicatori字符串,使总体字符串长度等于maxLength。如果maxLength小于indicator的长度,报错IllegalArgumentException.如果maxLength大于seq的长度,则结果即为seq。

    public class AsciiOwnTest {
        
    
         public static void main(String[] args) {
            String test=Ascii.toLowerCase("ZHONG GUO!");
            System.out.println(test);
            test=Ascii.toUpperCase("feng ge");
            System.out.println(test);
            //test=Ascii.truncate("laoshiha", 3, "....");这个会报错
            //System.out.println(test);
            test=Ascii.truncate("laoshiha", 4, "....");
            System.out.println(test);
            test=Ascii.truncate("laoshiha", 5, "....");
            System.out.println(test);
            test=Ascii.truncate("laoshiha", 6, "....");
            System.out.println(test);
            test=Ascii.truncate("laoshiha", 7, "....");
            System.out.println(test);
            test=Ascii.truncate("laoshiha", 8, "....");
            System.out.println(test);
            test=Ascii.truncate("laoshiha", 9, "....");
            System.out.println(test);
        }
    }

    结果如下:

    zhong guo!
    FENG GE
    ....
    l....
    la....
    lao....
    laoshiha
    laoshiha

                    Joiner:用于将容器中的元素进行拼接,这个还是比较实用。

                                                            on(String param):按照param来做分隔符。

                                                             join(Iterator<?> part):用来拼接迭代器中的元素,返回一个String类型

                                                             append(A extend appendable,Iterator<?> parts): 在A对象后边加拼接迭代器中的元素。

    public class Test {
    
         public static void main(String[] args) {
             
             Joiner joiner = Joiner.on(";");
             List<String> lists = new ArrayList<String>();
             lists.add("hhaha");
             lists.add("中国龙");
             System.out.println(joiner.join(lists.iterator()));
             StringBuilder sb = new StringBuilder();
             sb.append("什么意思?");
              sb =joiner.appendTo(sb, lists);
             System.out.println(sb.toString());
             
        }
    hhaha;中国龙
    什么意思?hhaha;中国龙

                     Objects:实体类

                                                               equal(,):校验两个对象是否相等.

         public static void main(String[] args) {
             System.out.println(Objects.equal(1,1));
        }
         
    true

                                                   Splitter:按照某个字符分割一组数据。

                                                          on():分隔符.

                                                          split(CharSequence param):分割的数据.

    public class Test {
    
         public static void main(String[] args) {
             Iterator<String> it = Splitter.on(",").split("wo,xiang,ni").iterator();
             while(it.hasNext()){
                 System.out.println(it.next());
             }
        }
         
    }

    结果:    

    wo
    xiang
    ni

                                                   ComparisonChain:执行比较操作直至发现非零的结果,在那之后的比较输入将被忽略。

     class TestCompare implements Comparable<TestCompare>{
             
             private String hehe;
             
             private int heihei;
    
            public String getHehe() {
                return hehe;
            }
            public void setHehe(String hehe) {
                this.hehe = hehe;
            }
    
            @Override
            public int compareTo(TestCompare t) {
                return ComparisonChain.start()
                        .compare(this.hehe, t.hehe)
                        .compare(this.heihei, t.heihei)
                        .result();
            }
    
             
         }

                           

                                                  

  • 相关阅读:
    2020毕业设计选用4412开发板,实战教程,小成果不放过
    学习嵌入式有决心4412再送免费教程
    iTOP4412开发板can测试工具使用文档
    iTOP4412Ubuntu系统源码ubuntu没有声音的解决办法
    修身养性,为人处事100条
    用X++实现有规律分割的长字符串,分别提取(如逗号隔开)
    自定义Dialog中对数组的取值
    Common实现任何Form定位查询转到当前Form种过滤符合条件的数据区域
    用X++得到当前用户是否有某Security Key的权限级别,完整Job演示
    获取table中的系统字段信息
  • 原文地址:https://www.cnblogs.com/jiligalaer/p/5345671.html
Copyright © 2011-2022 走看看