分类:: Java

0

Guava优美代码-15-基本类型

Guava基本类型关于基本类型,我们在Java中有:byte、short、int、long、float、double、char和boolean。我们知道除了这些之外,还有关于这些基本类型的包装类:Byte、Short、Integer、Long、Float、Double、Character和Boolean。原因是这些基本类型没法当成对象或者泛型的参数使用。这意味着许多通用的方法都不支持它们。基于这个

0

Guava优美代码-14-Strings

Guava字符串处理字符串不管在什么时候都是我们最为关心的,尤其是从事Web开发的朋友,字符串的各种操作也都是工作中必备的技能。Google也看到了我们广大的开发者处理字符串的痛点,于是他们为我们带来了Strings的工具类,这个工具类套件包含了很多有用的类,比如Strings类本身,还有用于分割的Splitter类,用于连接的Joiner类以及用于字符串匹配的CharMatcher类等等。下面我

0

Guava优美代码-13-Predicate

Guava函数式编程上一节篇文章我们说了Guava的Function函数的用法,这一节我们来说一说Predicate预言。Predicate的使用也是非常多的,因此读者朋友们也需要多多重视Predicate的用法。简单说一下Predicate和Function的区别,你可以理解为Predicate主要是用来判断一些条件成不成立的,而Function主要是用来执行一些操作的,侧重点不同。 Predi

0

Guava优美代码-12-Function

Guava函数式编程关于函数式编程,好像越来越多的编程语言都开始逐渐支持这个特性,最明显的就是python,javascript,还有Swift等等。Java终于在1.8中支持了函数式编程,但是在JDK1.8推出来以前,Guava就为我们提供了强大的函数式编程框架—Function。 Function和FunctionsFunction<A, B>,它声明了单个方法B apply(A

0

Guava优美代码-11-Cache

Guava缓存Cache缓存(Cache)是我们在开发中为了提高系统的性能,把经常的访问业务数据在第一次访问时没有就先处理结果然后放到缓存中,第二次就不用在对相同的业务数据再重新处理一遍,这样就大大提高了系统的性能。缓存被广泛地引用在各个企业的业务系统中,Guava为我们提供了一个非常好的缓存架构,下面介绍Guava Cache的具体使用方法。 缓存分类缓存分好几种: 本地缓存。 数据库缓存。

0

Guava优美代码-10-CollectionUtils

集合工具类 Collection Utils ClassGuava的魅力在处理集合的方面可以说是展现的淋漓尽致,相比JDK的实现,使用Guava可以使我们的代码变得更加“优美”,尤其是在集合接口的声明或者是创建上面。下面我们通过一些简单的例子来领略一下Guava的魅力! 静态工厂方法在JDK 7之前,构造新的泛型集合时要讨厌地重复声明泛型: 1List<TypeThatsTooLongFor

0

Guava优美代码-9-MultiMap

多值映射MultiMapMap大概是我们在生产过程中使用最多的容器之一了。Map是一种典型的K-V(键-值)结构。即可以通过一个Key(键)查找到对应的V(值)。正是由于此,JDK规定了Map中不能有重复的键,因为重复会导致无法查询准确的值。但是我们也要注意到这么一个需求:经常地,我们会需要一个键对应多个值,如果用JDK表示,就是这种结构Map<String, List<String&

0

Guava优美代码-8-MultiSet

多值集合MultiSet使用过JDK的同学都知道,在Java中集合Set是不允许重复的,也就是说在同一个集合中不允许出现两个相同的元素。但是如果我们需要计算一个集合中一个元素出现的次数,采用JDK的方式去完成的话会非常的麻烦,但是Guava为我们解决了这个问题—-MultiSet。 实现一个Word Count程序我们需要统计一段文字中各个单词出现的次数,下面给出JDK和Guava两种实现方式。

0

Guava优美代码-7-ImmutCollections

不可变集合Immutable Collections为什么要使用不可变集合不可变对象有很多优点,包括: 当对象被不可信的库调用时,不可变形式是安全的; 不可变对象被多个线程调用时,不存在竞态条件问题 不可变集合不需要考虑变化,因此可以节省时间和空间。所有不可变的集合都比它们的可变形式有更好的内存利用率(比如分析和测试细节); 不可变对象因为固定不变,所以可以作为常量来安全使用。 创建对象的不可

0

Guava优美代码-6-Throwables

简化异常处理的ThrowablesGuava提供了一个异常处理工具类, 可以简单地捕获和重新抛出多个异常。这个工具就是Throwables。借助Throwables工具类,我们可以很轻松地完成以下一些事情: 获取异常链 获取最底层的异常 过滤异常,只抛出我们感兴趣的异常 把受检查的异常转换为运行时异常 下面直接给出上述几种用例场景的示例代码分析。 获取异常链(getCausalChain)12