导语



guava是google出品的java类库,被google广泛用于内部项目,该类库经过google大牛们的千锤百炼,以优雅的设计在java世界流行。版本迭代至今,很多思想甚至被JDK标准库借鉴,如Optional,Objects等。

Guava中的核心库有:

  • 集合 [collections]
  • 缓存 [caching]
  • 原生类型支持 [primitives support]
  • 并发库 [concurrency libraries]
  • 通用注解 [common annotations]
  • 字符串处理 [string processing]
  • I/O 等等。

集合

编程是为业务服务,一个有效的业务必然会有输入和输出,比如HTTP服务中的请求参数和响应内容。所谓的输入和输出从本质上来说其实就是字节的不同持久化形式,如数据库,本地文件,JSON字符串等等。综上,业务中的java代码必然有I/O,并且以字节为载体。而连续的字节可以抽象为一串字节流,字节流中的字节可以通过不同划分方式(字符集,字符编码表)如每两个连续字节或者三个连续字节划分翻译为数字,数字又可以映射为字符,最后成为字符串。所以,最终的本质就是,java代码的所有操作最终都是对字符串的操作。因为代码的最终操作是对字节流的操作,而字节流总是可以通过一个合适的字符集转换成字符流,从而转换成字符串。

和Apache comomons类库不同,guava虽然提供了丰富且便捷的String操作,但是并不是放在一个工具类中作为静态方法类似过程式编程的使用。而是合理抽象成了若干个类,提供了更加OOP的操作。

com.google.common.base.Strings

com.google.common.base.CharMatcher

com.google.common.base.Charsets

com.google.common.base.CaseFormat

参数校验

参数相关

网络

网络相关

最新文章

  1. web中c#纯网站中引用log4net模块,不记录日志
  2. Python开发简单爬虫 - 慕课网
  3. (DFS)zoj1008-Gnome Tetravex
  4. 通过AJAX与ASP.NET结合实现的仿GridView增删改查功能
  5. C扩展Python
  6. webservice简单总结
  7. Oracle 方法
  8. json中换行问题
  9. J2SE知识点摘记-数据库(一)
  10. json处理三部曲之第二曲:利用Jackson处理json
  11. JavaScript跨域总结与解决办法 什么是跨域
  12. linux使用freetds 连接连远程服务器sqlservser2012
  13. Java面试题积累
  14. Javascript高级编程学习笔记(27)—— BOM(1)window对象1
  15. 全网最详细的一款满足多台电脑共用一个鼠标和键盘的工具Synergy(图文详解)
  16. HAProxy出现"远程主机强迫关闭了一个现有的连接 " 的错误及解决
  17. 条件变脸pthread_cond_signal丢失问题
  18. C# Post HTTP Request
  19. Sql 嵌套循环
  20. Qt532.容器QMap&QMultiMap

热门文章

  1. JavaWeb——B/S,C/S结构,HTTP协议
  2. Apache Cocoon XML注入 [CVE-2020-11991]
  3. SSH 登录警告:WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!
  4. ARP病毒系列——基础篇
  5. ProBuilder快速原型开发技术 ---操作基础
  6. P4755 Beautiful Pair (分治 + 主席树)
  7. 前n项余数个数和
  8. hdu5534 Partial Tree
  9. SPF POJ - 1523 割点+并查集
  10. Codeforces Round #670 (Div. 2) C. Link Cut Centroids (dfs,树)