Guava学习笔记:Range

2013-08-08
  在Guava中新增了一个新的类型Range,从名字就可以了解到,这个是和区间有关的数据结构。从Google官方文档可以得到定义:Range定义了连续跨度的范围边界,这个连续跨度是一个可以比较的类型(Comparable type)。比如1到100之间的整型数据。   在数学里面的范围是有边界和无边界之分的;同样,在Guava中也有这个说法。如果这个范围是有边界的,那么这个范围又可以分为包括开集
分类:Guava教程

Guava学习笔记:EventBus

2013-08-08
  EventBus是Guava的事件处理机制,是设计模式中的观察者模式(生产/消费者编程模型)的优雅实现。对于事件监听和发布订阅模式,EventBus是一个非常优雅和简单解决方案,我们不用创建复杂的类和接口层次结构。   Observer模式是比较常用的设计模式之一,虽然有时候在具体代码里,它不一定叫这个名字,比如改头换面叫个Listener,但模式就是这个模式。手工实现一个Observer也不
分类:Guava教程

Guava学习笔记:Guava cache

2013-08-08
  缓存,在我们日常开发中是必不可少的一种解决性能问题的方法。简单的说,cache 就是为了提升系统性能而开辟的一块内存空间。   缓存的主要作用是暂时在内存中保存业务系统的数据处理结果,并且等待下次访问使用。在日常开发的很多场合,由于受限于硬盘IO的性能或者我们自身业务系统的数据处理和获取可能非常费时,当我们发现我们的系统这个数据请求量很大的时候,频繁的IO和频繁的逻辑处理会导致硬盘和CPU资源
分类:Guava教程

Guava学习笔记:Guava新集合-Table等

2013-08-08
  Table   当我们需要多个索引的数据结构的时候,通常情况下,我们只能用这种丑陋的Map<FirstName, Map<LastName, Person>>来实现。为此Guava提供了一个新的集合类型-Table集合类型,来支持这种数据结构的使用场景。Table支持“row”和“column”,而且提供多种视图。  @Test public void
分类:Guava教程

Guava学习笔记:Guava新增集合类型-Bimap

2013-08-08
  BiMap提供了一种新的集合类型,它提供了key和value的双向关联的数据结构。   通常情况下,我们在使用Java的Map时,往往是通过key来查找value的,但是如果出现下面一种场景的情况,我们就需要额外编写一些代码了。首先来看下面一种表示标识序号和文件名的map结构。 @Test public void logMapTest(){ Map<
分类:Guava教程

Guava学习笔记:Guava新增集合类型-Multimap

2013-08-08
  在日常的开发工作中,我们有的时候需要构造像Map<K, List<V>>或者Map<K, Set<V>>这样比较复杂的集合类型的数据结构,以便做相应的业务逻辑处理。例如: import java.util.ArrayList;import java.util.HashMap;import java.util.List;import ja
分类:Guava教程

Guava学习笔记:Guava新增集合类型-Multiset

2013-08-08
  Guava引进了JDK里没有的,但是非常有用的一些新的集合类型。所有这些新集合类型都能和JDK里的集合平滑集成。Guava集合非常精准地实现了JDK定义的接口。Guava中定义的新集合有:   Multiset   SortedMultiset   Multimap   ListMultimap   SetMultimap   BiMap   ClassToInstanceMap   Tabl
分类:Guava教程

Guava学习笔记:Immutable(不可变)集合

2013-08-08
  不可变集合,顾名思义就是说集合是不可被修改的。集合的数据项是在创建的时候提供,并且在整个生命周期中都不可改变。   为什么要用immutable对象?immutable对象有以下的优点:     1.对不可靠的客户代码库来说,它使用安全,可以在未受信任的类库中安全的使用这些对象     2.线程安全的:immutable对象在多线程下安全,没有竞态条件     3.不需要支持可变性, 可以尽量
分类:Guava教程

Guava学习笔记:简化异常处理的Throwables类

2013-08-08
  有时候, 当我们我们捕获异常, 并且像把这个异常传递到下一个try/catch块中。Guava提供了一个异常处理工具类, 可以简单地捕获和重新抛出多个异常。例如: import java.io.IOException;import org.junit.Test;import com.google.common.base.Throwables;public class Throwabl
分类:Guava教程

Guava学习笔记:复写的Object常用方法

2013-08-08
  在Java中Object类是所有类的父类,其中有几个需要override的方法比如equals,hashCode和toString等方法。每次写这几个方法都要做很多重复性的判断, 很多类库提供了覆写这几个方法的工具类, Guava也提供了类似的方式。下面我们来看看Guava中这几个方法简单使用。   equals方法:   equals是一个经常需要覆写的方法, 可以查看Object的equa
分类:Guava教程

专题教程

JAVA概述
第一部分:java入门基础
第二部分:java常用类
第三部分:jdbc系列教程
第四部分:java高级特征
Gson教程
快速了解 jdk8 新特征

最近更新

更多
  • Mac截图快捷键
  • MacBook 跳到行尾、行首、Home和end快捷键
  • Spring Boot使用FastJson解析JSON数据
  • ueditor加载配置:spring boot 整合 ueditor 教程四
  • spring boot 整合 ueditor 教程三:ueditor执行流程
  • spring boot 整合 ueditor 教程二:使用springmvc替换controller.jsp
  • spring boot 整合 ueditor 教程一
  • IntelliJ IDEA 版本控制(svn、git) 修改文件后,所属目录的颜色也变化
  • 传智播客maven视频教程
  • 传智播客java项目视频教程_JavaWeb网上商城实战项目
  • 传智播客java基础视频教程
  • 传智播客分布式缓存视频教程
  • 传智播客基于支付宝移动支付视频教程
  • 传智播客分布式架构视频教程
  • 传智播客JAVA二维码视频教程
  • 传智播客Java文件上传视频教程
  • 传智播客Java爬虫视频教程
  • 即时通信技术-Websocket在线聊天视频教程
  • 网上购物商城(前端+后端+云部署)-传智播客商城视频教程
  • 揭开Docker神秘的面纱-传智播客Docker视频教程
  • MySQL优化-教你如何全面的对数据库进行优化
  • 探秘双“11”征服马云刘强东的电商架构 
  • elasticsearch-2.x下载与安装
  • Elasticseach可视化操作客户端kibana部署
  • 基于windows环境部署Elasticseach
  • 实战Java高并发程序设计 pdf 下载
  • 《实战java高并发程序设计》源码下载
  • spring boot使用freemarker生成静态html—基于springmvc+tomcat切到springboot实战三
  • spring boot入口类Application—基于springmvc+tomcat切到springboot实战二
  • 开篇—基于springmvc+tomcat切到springboot实战一