久草最新视频-久草最新网址-久国产-久国产视频-天天插夜夜操-天天插一插

你應該更新的Java知識之常用程序庫(一)

在很多人眼中,Java已經是一門垂垂老矣的語言,但并不妨礙Java世界依然在前進。如果你曾離開Java,云游于其它世界,或是每日只在遺留代碼中掙扎,或許是時候抬起頭,看看老Java中的新東西。

Guava

一句話,只要你做Java項目,就應該用Guava

guavaGoogle出品的一套Java核心庫,在我看來,它甚至應該是JDK的一部分。作為一個Java程序員,如果你沒抱怨過JDK的設計,只能說明一點,你寫得程序還是太少。正是JDK設計不彰,才有了一些項目來補充JDK的不足。如果說老Java程序員應該聽說過Apache Commons Lang,那新Java程序員該知道的就是Guava了。

Java程序員更多的是知道Google Collections,不妨到它的主頁上走一遭,你會看到這個庫已經改名為Guava。事實上,Guava并不直接等于Google CollectionsGuava是一個超集。Guava實在太強大了,要想展現它的強大,需要專門的介紹,這里就不展開了。

下面以一個統計單詞出現個數的小程序作為這個段落的結尾,雖然無法與許多其它語言的實現相提并論,但作為一個Java程序員,你不妨想一下按照傳統方式,這段代碼應該是什么樣子。

String content = Files.toString(new File(args[0]), Charset.defaultCharset());

Iterable texts = Splitter.on(CharMatcher.WHITESPACE)

.omitEmptyStrings()

.trimResults()

.split(content);

Multiset collection = HashMultiset.create(texts);

Joda Time

你覺得一個API設計得差到什么份上,才會把自己差不多的API全部Deprecated掉。java.util.Date便是這樣的奇葩。因為它的API幾乎都是反直覺的,幾乎所有敢于用它的Java程序員都吃過它的虧。想初始化個2013年的第一天,還真不那么容易:

Date firstDayOf2013 = new Date(113, 0, 1);

如果你是個Java新手,你能猜出113是從哪來的嗎?(好吧,它是2013-1900,至于為什么是1900,這真得問API的設計者了)。

Joda Time就是人們實在無法忍受這樣東西的產物。同樣的代碼用Joda Time實現:

DateTime firstDayOf2013 = new DateTime().withDate(2013, 1, 1);

無論如何,你知道這能看出這些參數的含義了。不只如此,你還可以計算兩天后是什么日子:

firstDate.plusDays(2);

日期格式化,也是JDK Date系列API里一大特色,你必須把代碼寫成下面這樣:

new SimpleDateFormat("yyyy.MM.dd").format(firstDayOf2013)

作為一個初始化很慢的構造函數,你還必須每次調用,因為它不是線程安全的。同樣的代碼,在Joda Time里,我們可以用DateTimeFormatter

DateTimeFormatter formatter = DateTimeFormat.forPattern("yyyy.MM.dd");

...

formatter.print(dateTime);

請盡管放心大膽把formatter聲明成一個字段,因為它是線程安全的。

當然,Joda Time的強大遠不止于此。當然,JDK也并不是那么完全的自暴自棄,于是,有了一個JSR 310專門設計新的Date APIJSR 310spec leadSteven Colebourne,此人正是Joda Time的作者。

北大青鳥網上報名
北大青鳥招生簡章
主站蜘蛛池模板: 色综合久久综合 | 国产午夜精品久久久久免费视小说 | 亚洲黄视频在线观看 | 国产片自拍| 这里都是精品 | 日本亚洲高清 | 欧美一区二区三区高清视频 | 欧洲色网 | 91video| 日韩一区二区在线观看 | 国产精品秒播无毒不卡 | 亚洲婷婷第一狠人综合精品 | 美女国模嫣然生殖欣赏337p | 看黄网址在线观看 | 精东影业果冻传媒 | 精品欧美一区二区三区精品久久 | 亚洲欧美日韩国产 | 欧美成人观看视频在线 | 欧美日韩在线视频 | 91系列在线观看 | 国产成人污污网站在线观看 | 在线观看中文字幕一区 | 国产精品福利片免费看 | 成人免费午夜视频 | 91网站在线免费观看 | 日本强不卡在线观看 | 男人的天堂影院 | 国产精品国产亚洲精品看不卡 | 三级aa久久 | 91精品成人免费国产 | 99热首页 | 国内视频一区 | 摸一摸操一操 | 国产一区二区三区亚洲欧美 | 热99re久久免费视精品频软件 | eeuss影院【www...】 | 亚洲1024| 欧洲女人性行为免费视频 | 久久精品视频免费播放 | 免费三级在线观看 | 欧美日韩一区二区中文字幕视频 |