• 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();
            }
    
             
         }

                           

                                                  

  • 相关阅读:
    java学习--基础知识进阶第十一天--笔记
    java学习--基础知识进阶第十天--笔记
    java学习--基础知识进阶第十天--标准输入流 & 转换流 & 打印流、对象操作流 、Properties集合
    java学习--基础知识进阶第九天--笔记
    java学习--基础知识进阶第九天-- File类、字符流与字节流
    java学习--基础知识进阶第八天--笔记
    java学习--基础知识进阶第八天--异常体系&异常处理、Throwable常用方法&自定义异常、递归
    java学习--基础知识进阶第七天--笔记
    java学习--基础知识进阶第七天--HashSet集合、HashMap集合(集合遍历)
    java学习--基础知识进阶第六天--笔记
  • 原文地址:https://www.cnblogs.com/jiligalaer/p/5345671.html
Copyright © 2020-2023  润新知