Jack47

我思故我在

Google Java编程库Guava介绍

本系列想介绍下Java下开源的优秀编程库--Guava[ˈgwɑːvə]。它包含了Google在Java项目中使用一些核心库,包含集合(Collections),缓存(Caching),并发编程库(Concurrency),常用注解(Common annotations),String操作,I/O操作方面的众多非常实用的函数。Guava需要JDK1.6及以上版本。

使用这些开源的类库,帮助非常大,能够节约你的宝贵时间,减少你出错的可能,让你把时间都集中在处理自己独特的业务逻辑上。同时可以多看看这些优秀的开源库,向他们学习,能够帮助你设计更好的API,让你的代码更易读,更整洁,更简单,因为这些API自身就是很好的例子。

Guava库是按照Joshua BlochEffective Java: 2nd Edition来写的,不可变性(不可变的集合,CharMatcher,Joiner, Splitter等),构造者模式(ImmutableList.builder(), Joiner, Ordering等),范型等随处可见,使用工厂而不是构造函数(Maps.newHashMap()),钟情于组合而不是继承(ForwardXXX这类集合)。

如果你是使用Maven来作Java/Android项目管理,可以在pom.xml中dependencies下添加对Guava的依赖,然后在IntelliJ IDEA重新导入(Reimport)这个项目,让Maven下载Guava对应版本的jar包,就可以使用Guava提供的众多API了。如果在IntelliJ IDEA中跳转到了Guava的代码中,可以使用右上角提示的"Download Source"来下载对应的源码。

<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>19.0</version>
</dependency>

本系列目录如下,目前只写了1,2后续会逐渐补上:

  1. 集合(Collection)相关的API
  2. 实用的工具类
  3. 缓存(Cacheing) API
  4. 并发编程(Concurrency)

参考资料:

Guava wiki

Guava Github

Friends of Guava

posted on 2016-01-17 19:17 Jack47 阅读(708) 评论(2) 编辑 收藏

</div><a name="!comments"></a><div id="blog-comments-placeholder"><div id="comments_pager_top"></div>

评论

<h4><a href="#3350717" class="layer">#1楼</a><a name="3350717" id="comment_anchor_3350717"></a><span> <span class="comment_date">2016-01-20 09:43</span></span><a id="a_comment_author_3350717" href="http://www.cnblogs.com/lizhanwu/" target="_blank">Walle</a> <a href="http://msg.cnblogs.com/send/Walle" title="发送站内短消息" class="sendMsg2This">&nbsp;</a></h4>
<p></p><div id="comment_body_3350717" class="blog_comment_body">请问阁下具体工作是C++和Java都写吗?</div><div class="comment_vote"><a href="javascript:void(0);" class="comment_digg" onclick="return voteComment(3350717,'Digg',this)">支持(0)</a><a href="javascript:void(0);" class="comment_bury" onclick="return voteComment(3350717,'Bury',this)">反对(0)</a></div><span id="comment_3350717_avatar" style="display:none;">http://pic.cnblogs.com/face/631817/20141211160544.png</span><span class="comment_actions"></span><p></p> <h4><a href="#3350921" class="layer">#2楼</a><a name="3350921" id="comment_anchor_3350921"></a>[<span class="louzhu">楼主</span>]<span id="comment-maxId" style="display:none;">3350921</span><span id="comment-maxDate" style="display:none;">2016/1/20 12:50:12</span><span> <span class="comment_date">2016-01-20 12:50</span></span><a id="a_comment_author_3350921" href="http://www.cnblogs.com/Jack47/" target="_blank">Jack47</a> <a href="http://msg.cnblogs.com/send/Jack47" title="发送站内短消息" class="sendMsg2This">&nbsp;</a></h4>
<p></p><div id="comment_body_3350921" class="blog_comment_body">对,C++用的很多,最近在搞实时计算,所以也在用Java。</div><div class="comment_vote"><a href="javascript:void(0);" class="comment_digg" onclick="return voteComment(3350921,'Digg',this)">支持(0)</a><a href="javascript:void(0);" class="comment_bury" onclick="return voteComment(3350921,'Bury',this)">反对(0)</a></div><span class="comment_actions"></span><p></p>
注册用户登录后才能发表评论,请 登录注册访问网站首页。

导航

< 2016年12月 >
27 28 29 30 1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
1 2 3 4 5 6 7

统计

  • 随笔 - 57
  • 文章 - 0
  • 评论 - 82
  • 引用 - 0

搜索

 

我的标签

随笔分类(65)

			<ul>

			<li><a id="CatList_LinkList_0_Link_0" href="http://www.cnblogs.com/Jack47/category/438019.html">C(7)</a> </li>

			<li><a id="CatList_LinkList_0_Link_1" href="http://www.cnblogs.com/Jack47/category/428076.html">C#(3)</a> </li>

			<li><a id="CatList_LinkList_0_Link_2" href="http://www.cnblogs.com/Jack47/category/916438.html">Docker(2)</a> </li>

			<li><a id="CatList_LinkList_0_Link_3" href="http://www.cnblogs.com/Jack47/category/901710.html">go(1)</a> </li>

			<li><a id="CatList_LinkList_0_Link_4" href="http://www.cnblogs.com/Jack47/category/584371.html">Java(4)</a> </li>

			<li><a id="CatList_LinkList_0_Link_5" href="http://www.cnblogs.com/Jack47/category/916437.html">Kubernetes(1)</a> </li>

			<li><a id="CatList_LinkList_0_Link_6" href="http://www.cnblogs.com/Jack47/category/426380.html">Linux(9)</a> </li>

			<li><a id="CatList_LinkList_0_Link_7" href="http://www.cnblogs.com/Jack47/category/423429.html">Ruby on Rails(9)</a> </li>

			<li><a id="CatList_LinkList_0_Link_8" href="http://www.cnblogs.com/Jack47/category/715882.html">Storm(4)</a> </li>

			<li><a id="CatList_LinkList_0_Link_9" href="http://www.cnblogs.com/Jack47/category/553414.html">vim(3)</a> </li>

			<li><a id="CatList_LinkList_0_Link_10" href="http://www.cnblogs.com/Jack47/category/584373.html">XML(1)</a> </li>

			<li><a id="CatList_LinkList_0_Link_11" href="http://www.cnblogs.com/Jack47/category/715892.html">大数据处理(4)</a> </li>

			<li><a id="CatList_LinkList_0_Link_12" href="http://www.cnblogs.com/Jack47/category/435745.html">翻译(1)</a> </li>

			<li><a id="CatList_LinkList_0_Link_13" href="http://www.cnblogs.com/Jack47/category/640522.html">计算广告(3)</a> </li>

			<li><a id="CatList_LinkList_0_Link_14" href="http://www.cnblogs.com/Jack47/category/715883.html">流式计算(5)</a> </li>

			<li><a id="CatList_LinkList_0_Link_15" href="http://www.cnblogs.com/Jack47/category/435454.html">设计模式实践(1)</a> </li>

			<li><a id="CatList_LinkList_0_Link_16" href="http://www.cnblogs.com/Jack47/category/584372.html">数据库(1)</a> </li>

			<li><a id="CatList_LinkList_0_Link_17" href="http://www.cnblogs.com/Jack47/category/640523.html">搜索广告(3)</a> </li>

			<li><a id="CatList_LinkList_0_Link_18" href="http://www.cnblogs.com/Jack47/category/640524.html">搜索引擎(3)</a> </li>

			</ul>

	<h3>随笔档案<span style="font-size:11px;font-weight:normal">(57)</span></h3>

			<ul>

			<li><a id="CatList_LinkList_1_Link_0" href="http://www.cnblogs.com/Jack47/archive/2016/11.html">2016年11月 (1)</a> </li>

			<li><a id="CatList_LinkList_1_Link_1" href="http://www.cnblogs.com/Jack47/archive/2016/10.html">2016年10月 (1)</a> </li>

			<li><a id="CatList_LinkList_1_Link_2" href="http://www.cnblogs.com/Jack47/archive/2016/09.html">2016年9月 (1)</a> </li>

			<li><a id="CatList_LinkList_1_Link_3" href="http://www.cnblogs.com/Jack47/archive/2016/06.html">2016年6月 (1)</a> </li>

			<li><a id="CatList_LinkList_1_Link_4" href="http://www.cnblogs.com/Jack47/archive/2016/05.html">2016年5月 (1)</a> </li>

			<li><a id="CatList_LinkList_1_Link_5" href="http://www.cnblogs.com/Jack47/archive/2016/04.html">2016年4月 (1)</a> </li>

			<li><a id="CatList_LinkList_1_Link_6" href="http://www.cnblogs.com/Jack47/archive/2016/03.html">2016年3月 (1)</a> </li>

			<li><a id="CatList_LinkList_1_Link_7" href="http://www.cnblogs.com/Jack47/archive/2016/02.html">2016年2月 (1)</a> </li>

			<li><a id="CatList_LinkList_1_Link_8" href="http://www.cnblogs.com/Jack47/archive/2016/01.html">2016年1月 (2)</a> </li>

			<li><a id="CatList_LinkList_1_Link_9" href="http://www.cnblogs.com/Jack47/archive/2015/10.html">2015年10月 (1)</a> </li>

			<li><a id="CatList_LinkList_1_Link_10" href="http://www.cnblogs.com/Jack47/archive/2015/09.html">2015年9月 (1)</a> </li>

			<li><a id="CatList_LinkList_1_Link_11" href="http://www.cnblogs.com/Jack47/archive/2015/08.html">2015年8月 (1)</a> </li>

			<li><a id="CatList_LinkList_1_Link_12" href="http://www.cnblogs.com/Jack47/archive/2015/07.html">2015年7月 (3)</a> </li>

			<li><a id="CatList_LinkList_1_Link_13" href="http://www.cnblogs.com/Jack47/archive/2015/06.html">2015年6月 (3)</a> </li>

			<li><a id="CatList_LinkList_1_Link_14" href="http://www.cnblogs.com/Jack47/archive/2015/05.html">2015年5月 (3)</a> </li>

			<li><a id="CatList_LinkList_1_Link_15" href="http://www.cnblogs.com/Jack47/archive/2015/04.html">2015年4月 (7)</a> </li>

			<li><a id="CatList_LinkList_1_Link_16" href="http://www.cnblogs.com/Jack47/archive/2015/03.html">2015年3月 (4)</a> </li>

			<li><a id="CatList_LinkList_1_Link_17" href="http://www.cnblogs.com/Jack47/archive/2014/12.html">2014年12月 (1)</a> </li>

			<li><a id="CatList_LinkList_1_Link_18" href="http://www.cnblogs.com/Jack47/archive/2014/10.html">2014年10月 (1)</a> </li>

			<li><a id="CatList_LinkList_1_Link_19" href="http://www.cnblogs.com/Jack47/archive/2014/05.html">2014年5月 (1)</a> </li>

			<li><a id="CatList_LinkList_1_Link_20" href="http://www.cnblogs.com/Jack47/archive/2014/02.html">2014年2月 (1)</a> </li>

			<li><a id="CatList_LinkList_1_Link_21" href="http://www.cnblogs.com/Jack47/archive/2013/11.html">2013年11月 (1)</a> </li>

			<li><a id="CatList_LinkList_1_Link_22" href="http://www.cnblogs.com/Jack47/archive/2013/10.html">2013年10月 (1)</a> </li>

			<li><a id="CatList_LinkList_1_Link_23" href="http://www.cnblogs.com/Jack47/archive/2013/03.html">2013年3月 (1)</a> </li>

			<li><a id="CatList_LinkList_1_Link_24" href="http://www.cnblogs.com/Jack47/archive/2013/01.html">2013年1月 (2)</a> </li>

			<li><a id="CatList_LinkList_1_Link_25" href="http://www.cnblogs.com/Jack47/archive/2012/12.html">2012年12月 (2)</a> </li>

			<li><a id="CatList_LinkList_1_Link_26" href="http://www.cnblogs.com/Jack47/archive/2012/11.html">2012年11月 (10)</a> </li>

			<li><a id="CatList_LinkList_1_Link_27" href="http://www.cnblogs.com/Jack47/archive/2012/10.html">2012年10月 (3)</a> </li>

			</ul>

	<h3>技术博客链接</h3>

			<ul>

			<li><a id="CatList_LinkList_2_Link_0" href="http://coolshell.cn" rel="nofollow">酷壳 – 享受编程和技术所带来的快乐</a> </li>

			<li><a id="CatList_LinkList_2_Link_1" href="http://mindhacks.cn" rel="nofollow">刘未鹏 | Mind Hacks 思维改变生活</a> </li>

			</ul>

</div><div id="sidebar_recentcomments" class="sidebar-block"><div id="recent_comments_wrap">

最新评论

guava常用操作的更多相关文章

  1. 【三】用Markdown写blog的常用操作

    本系列有五篇:分别是 [一]Ubuntu14.04+Jekyll+Github Pages搭建静态博客:主要是安装方面 [二]jekyll 的使用 :主要是jekyll的配置 [三]Markdown+ ...

  2. php模拟数据库常用操作效果

    test.php <?php header("Content-type:text/html;charset='utf8'"); error_reporting(E_ALL); ...

  3. Mac OS X常用操作入门指南

    前两天入手一个Macbook air,在装软件过程中摸索了一些基本操作,现就常用操作进行总结, 1关于触控板: 按下(不区分左右)            =鼠标左键 control+按下        ...

  4. mysql常用操作语句

    mysql常用操作语句 1.mysql -u root -p   2.mysql -h localhost -u root -p database_name 2.列出数据库: 1.show datab ...

  5. nodejs配置及cmd常用操作

    一.cmd常用操作 1.返回根目录cd\ 2.返回上层目录cd .. 3.查找当前目录下的所有文件dir 4.查找下层目录cd window 二.nodejs配置 Node.js安装包及源码下载地址为 ...

  6. Oracle常用操作——创建表空间、临时表空间、创建表分区、创建索引、锁表处理

    摘要:Oracle数据库的库表常用操作:创建与添加表空间.临时表空间.创建表分区.创建索引.锁表处理 1.表空间 ■  详细查看表空间使用状况,包括总大小,使用空间,使用率,剩余空间 --详细查看表空 ...

  7. python 异常处理、文件常用操作

    异常处理 http://www.jb51.net/article/95033.htm 文件常用操作 http://www.jb51.net/article/92946.htm

  8. byte数据的常用操作函数[转发]

    /// <summary> /// 本类提供了对byte数据的常用操作函数 /// </summary> public class ByteUtil { ','A','B',' ...

  9. Linux Shell数组常用操作详解

    Linux Shell数组常用操作详解 1数组定义: declare -a 数组名 数组名=(元素1 元素2 元素3 ) declare -a array array=( ) 数组用小括号括起,数组元 ...

随机推荐

  1. Atitit.在线充值功能的设计

    Atitit.在线充值功能的设计 1. 流程1 2. Js sdk api   增加订单1 3. Java api 返回servlet处理1 3.1. 返回网址的本地host测试2 1. 流程 本地增 ...

  2. 操作系统开发系列—12.c.从Loader加载ELF内核,顺便解释下函数调用过程 ●

    实际上,我们要做的工作是根据内核的Program header table的信息进行类似下面这个C语言语句的内存复制: memcpy(p_vaddr, BaseOfLoaderPhyAddr+p_of ...

  3. 【CoreData】表之间的关联

    这次是表之间怎么进行关联,要求如下: // 建立学生与班级表之间的联系 既然是表与表之间的关联,那肯定是要先创建表: // 1.创建模型文件 (相当于一个数据库里的表) // New File ——— ...

  4. Java中的查找算法之顺序查找(Sequential Search)

    Java中的查找算法之顺序查找(Sequential Search) 神话丿小王子的博客主页 a) 原理:顺序查找就是按顺序从头到尾依次往下查找,找到数据,则提前结束查找,找不到便一直查找下去,直到数 ...

  5. iOS-点击推送消息跳转处理

    当用户通过点击通知消息进入应用时 - (BOOL)application:(UIApplication*)application didFinishLaunchingWithOptions:(NSDi ...

  6. php设计模式 数据对象映射模式

    数据对象映射模式,是将对象和数据存储映射起来,对一个对象的操作会映射为对数据存储的操作. 在代码中实现数据对象映射模式,实现一个ORM类,将复杂的sql语句映射成对象属性的操作.对象关系映射(Obje ...

  7. Getting Started with ASP.NET Web API 2 (C#)

    By Mike Wasson|last updated May 28, 2015 7556 of 8454 people found this helpful Print   Download Com ...

  8. Tomcat 的使用学习

    一.Tomcat服务器端口的配置 Tomcat的所有配置都放在conf文件夹之中,里面的server.xml文件是配置的核心文件. 如果想修改Tomcat服务器的启动端口,则可以在server.xml ...

  9. Biee 迁移和刷新GUIDs

    Biee11g迁移 与刷新 一.停止biee服务 二.备份文件 1.       rpd文件夹路径: biee_home\instances\instance1\bifoundation\Oracle ...

  10. [整]SQL执行顺序

    SQL的执行顺序: 第一步:FROM <left_table> <join_type> JOIN <right_table> ON <on_predicate ...