Guava 15新特性介绍

转载 2015年07月10日 11:06:46

Guava 15新特性介绍

发表于2年前(2013-10-06 08:02)   阅读(417) | 评论(2) 10人收藏此文章, 我要收藏
0

【活动】OSC账号一键绑定监控宝,给你送水果

原文:http://www.javacodegeeks.com/2013/10/guava-15-new-features.html 
 Guava 是众所周知的google出品的开源工具包,十分好用,本月退出了version 15的版本,其中主要的几个新特性有: 




1 Escapers字符转义器 
  其目的就是在于将特殊字符进行转移,比如有: 
HtmlEscapers 
XmlEscapers 
UrlEscapers 
  还可以自定义escaper,比如: 


  // escaping HTML 
HtmlEscapers.htmlEscaper().escape("echo foo > file &"); 
// [result] echo foo > file & 


// escaping XML attributes and content 
XmlEscapers.xmlAttributeEscaper().escape("foo \"bar\""); 
// [result] echo "bar" 


XmlEscapers.xmlContentEscaper().escape("foo \"bar\""); 
// [result] foo "bar" 


// Custom Escaper 
// escape single quote with another single quote 
// and escape ampersand with backslash 
Escaper myEscaper = Escapers.builder() 
                            .addEscape('\'', "''") 
                            .addEscape('&', "\&") 
                            .build(); 


2 StandardSystemProperty 
  这个是用来方便调用如java.version, java.home 等环境变量的,使用的是enum了,比如: 
StandardSystemProperty.JAVA_VERSION.value(); 
// [result] 1.7.0_25 


StandardSystemProperty.JAVA_VERSION.key(); 
// [result] java.version 
3 EvictingQueue 
  这个是一个非阻塞的队列,当队列长度满了后,自动移除头元素,比如: 
  EvictingQueue<String> q = EvictingQueue.create(3); 
q.add("one"); 
q.add("two"); 
q.add("three"); 
q.add("four"); 
// the head of the queue is evicted after adding the fourth element 
// queue contains: [two, three, four] 


4  
 fileTreeTraverser 文件遍历递归利器 
   这个方法可以快速遍历某个文件目录下的所有文件,比如: 
 FluentIterable<File> iterable = Files.fileTreeTraverser().breadthFirstTraversal(new File("/var/tmp")); 
for (File f : iterable) { 
    System.out.println(f.getAbsolutePath()); 

 其中f.getAbsolutePath()用的是jdk 7中的方法 

Java --- Guava Escapers

Java --- Guava Escapers Guava Escaper 提供了对字符串内容中特殊字符进行替换的框架,并包括了Xml和Html的两个实现。 结构 基本结构:     ...

JAVA如何处理URL中的特殊字符

方法1: String str="http://www.baidu.com/api/?action=s2s_install&a={appsunion}&b=3&c=300294cf2fb33ab4...

ThreadLocal与InheritableThreadLocal的使用

编写线程安全类是困难的。它不但要求仔细分析在什么条件可以对变量进行读写,而且要求仔细分析其它类能如何使用某个类。 有时,要在不影响类的功能、易用性或性能的情况下使类成为线程安全的是很困难的。有些类保留...

Android ThreadLocal及InheritableThreadLocal分析

因为在android中经常用到handler来处理异步任务,通常用于接收消息,来操作UIThread,其中提到涉及到的looper对象就是保存在Threadlocal中的,因此研究下Threadloc...

ios-新浪微博开发-15(新特性3)

代码注释写的很详细 #import "QHNewfeatureViewController.h" #import "QHTabbarViewController.h" #define QHNew...

JavaSE 拾遗(15)——JavaSE 高新技术基础增强...java5简单新特性和枚举

eclipse开发工具 java5的一些简单新特性 java5的枚举

ArcGIS 10.2新特性介绍:影像

  • 2014年06月05日 11:47
  • 107KB
  • 下载

JAVA5新特性介绍

  • 2010年11月18日 16:25
  • 354KB
  • 下载

Dojo 1.6 图表库新特性介绍

在刚发布的Dojo1.6中,Dojo Charting库在进一步提高稳定性之外,又增加了不少新特性,让我们来瞧瞧吧! 1. 网状图(Spider Chart)网状图是一种相当常见的图表类型,最适合表现...

WebSphere Portal V6.1新特性及Mashup介绍

  • 2009年03月11日 18:25
  • 9.17MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Guava 15新特性介绍
举报原因:
原因补充:

(最多只允许输入30个字)