
guava
guava Google出的一个Java工具jar包,对里面的一些较常见的工具用法的总结。
请叫我大师兄_
请叫我大师兄
展开
-
提供 guava-19.0.jar 的jar包的下载链接云盘
guava-19.0.jar 的jar包下载云盘。如下:链接:http://pan.baidu.com/s/1c2khCxa 密码:5o65里面一个jar包,一个相当于是源码包,里面的数据更全点。都是19版本的。github开源项目:https://github.com/google/guava/wiki/Release19英文的api:http://google.github.io/guava/releases/19.0/api/docs/请叫我大师兄原创 2016-10-26 11:34:52 · 10693 阅读 · 15 评论 -
guava之Ordering的使用实例
guava的ordering这个类的使用,帮助代码排序。很不错的。1,先是简单的排序使用。 /** * 默认的排序器 * natural() 对可排序类型做自然排序,如数字按大小,日期按先后排序 * reverse() 对当前的比较器进行反转 * 自然排序,不能将汉字按首字母的顺序排序。 */ private static ...原创 2018-08-30 17:18:03 · 1374 阅读 · 1 评论 -
guava之ImmutableList三种初始化方式的使用实例
不可变集合,顾名思义就是说集合是不可被修改的。集合的数据项是在创建的时候提供,并且在整个生命周期中都不可改变。为什么要用immutable对象?immutable对象有以下的优点: 1.对不可靠的客户代码库来说,它使用安全,可以在未受信任的类库中安全的使用这些对象 2.线程安全的:immutable对象在多线程下安全,没有竞态条件 3.不需要支持可变性, 可以尽量节省...原创 2017-11-07 18:15:36 · 8542 阅读 · 0 评论 -
guava之ImmutableMap使用实例及好处
ImmutableMap 的作用就是:可以让java代码也能够创建一个对象常量映射,来保存一些常量映射的键值对。分析以下情景,来具体讨论这个的好处。以下是在js前台的代码,假设现在有需求如下:根据数据库存的某个key字段,来获得不同的提示名字。有以下3种处理方法1:用 多个 if else 语句,只要新添加个字段,你就得添加个 if else ,差评2:用 switch case 语句,只要新添加个字段,你就得添加个 case ,差评3:用 对象映射 方法,如下所示。 新建字原创 2016-11-18 09:30:10 · 33597 阅读 · 11 评论 -
guava之Strings和Johner工具类使用示例
在代码里面要经常的对字符串判断是不是null,是不是""空字符串,有可能要用分隔符把字符串序列连接起来也可能会遇上不必要的麻烦。如果字符串序列中含有null,那连接操作会更难。下面是我使用的简单例子。供参考。package com.lxk.guavaTest;import com.google.common.base.Joiner;import com.google.common.b原创 2016-11-18 14:56:46 · 1298 阅读 · 3 评论 -
guava之Maps常用示例及newHashMapWithExpectedSize()详解
谷歌提供了guava包里面有很多的工具类,现在来看Maps这个集合工具,对map集合操作做了些优化提升。现提供如下使用实例。package com.lxk.guavaTest;import com.google.common.collect.Maps;import java.util.Iterator;import java.util.Map;/** * guava Map原创 2016-11-14 15:38:20 · 26463 阅读 · 1 评论 -
guava之Lists常用示例及newArrayListWithExpectedSize()和newArrayListWithCapacity()详细对比
谷歌提供了guava包里面有很多的工具类,现在先看Lists这个集合工具,对list集合操作做了些优化提升。现提供如下使用实例。package com.lxk.guavaTest;import com.google.common.collect.Lists;import java.util.List;/** * Created by lxk on 2016/11/7 */原创 2016-11-10 15:49:27 · 16335 阅读 · 2 评论 -
Java和guava关于hashmap在初始化的时候最好给个初始容量,避免扩容引起性能问题的探究。
一般Java的集合初始化如下带初始容量的map:Map map = new HashMap(4);本意是希望给HashMap设置初始值, 避免扩容(resize)的开销. 但是没有考虑当添加的元素数量达到HashMap容量的75%时将出现resize.所以说上面的是徒劳的。错误的。guava里面有工具类Maps,可以很方便的创建一个集合,并且,带上合适的大小初始化值。具体如下:原创 2016-09-01 16:52:59 · 14805 阅读 · 0 评论 -
guava中Lists.newArrayListWithCapacity()的作用和实现原理
list集合初始化的时候,若大小可知,应初始化固定大小的集合,也是个好习惯。避免在add()元素的时候,要扩容,然后就得重新copy一遍元素,这样就不好啦。ArrayList集合大概原理:就是一个Object数组,来存储值,然后知道这点之后,继续看下面的。下面关于guava的Lists.newArrayListWithCapacity()初始化带大小的list集合的大概源码概览如下: ...原创 2016-09-05 10:45:16 · 14972 阅读 · 5 评论 -
guava HashMultiset 的使用说明
这个集合的特殊本领:统计集合中各个元素的个数具体看使用实例package com.lxk.guavaTest;import com.google.common.collect.HashMultiset;import com.google.common.collect.Lists;import com.lxk.util.PrintUtil;import java.util.Se...原创 2019-03-06 18:27:08 · 839 阅读 · 0 评论