標簽 ‘ java8

現代化的緩存設計方案

原文地址? 譯者:簡直

23979355273_e1ea8b2397_o

緩存是提升性能的通用方法,現在大多數的緩存實現都使用了經典的技術。這篇文章中,我們會發掘 Caffeine 中的現代化的實現方法。Caffeine 是一個開源的 Java 緩存庫,它能提供高命中率和出色的并發能力。期望讀者們能被這些想法激發,進而將它們應用到任何你喜歡的編程語言中。

閱讀全文

《JAVA8開發指南》使用流式操作

本文翻譯自《JAVA開發指南》第三章 ?

本章中,你將學習到怎樣使用Stream API進行開發。首先,你將會了解Stream API背后的機制,什么是流以及流的用處。其次,你將學習到一系列的流式操作、流式數據處理模型以及能讓你寫出更復雜數據查詢的流式集合操作。接下來是如何應用流式操作的例子。最后,你將學習到并行流。

閱讀全文

Java 8 新特性

原文鏈接?? 譯者:小村長

這篇文章是一篇介紹Java8新特性英文博客的中文翻譯,Java8發布有些時日,但是大家對它的了解和認識還不夠,大部分企業和用戶還停留在之前的版本中,本次翻譯主要針對對Java8感興趣和致力于從事Java開發的人員提供有價值的中文資料,希望能夠對大家的工作和學習有所幫助。Java8的中文資料相對匱乏,這是我看過介紹Java8新特性最好的一篇文章,作者通過實例和理論相結合的方式,通俗易懂的闡述了Java8的一些新特性,今天讓小村長為你揭開Java8的神秘面紗,一同走進碼農的精神世界。注釋 :?由于本人翻譯水平有限,文中難免出現錯誤或者翻譯不合理的地方,還希望大家多多指導。

閱讀全文

Java8簡明指南

Java8簡明指南

歡迎來到Java8簡明指南。本教程將一步一步指導你通過所有新語言特性。由短而簡單的代碼示例,帶你了解如何使用默認接口方法,lambda表達式,方法引用和可重復注解。本文的最后你會熟悉最新的API的變化如Stream,Fcuntional,Map API擴展和新的日期API。

 

閱讀全文

Java8中CAS的增強

幾天前,我偶然地將之前寫的用來測試AtomicInteger和synchronized的自增性能的代碼跑了一下,意外地發現AtomicInteger的性能比synchronized更好了,經過一番原因查找,有了如下發現:

在jdk1.7中,AtomicInteger的getAndIncrement是這樣的:

閱讀全文

Java 注解指導手冊 – 終極向導

原文鏈接?原文作者:Dani Buiza 譯者:Toien Liu ?校對:深海

編者的話:注解是java的一個主要特性且每個java開發者都應該知道如何使用它。

我們已經在Java?Code?Geeks提供了豐富的教程,?如Creating Your Own Java Annotations, Java Annotations Tutorial with Custom Annotation 和?Java?Annotations:?Explored?&?Explained.

我們也有些文章是關于注解在不同類庫中的應用,包括?Make?your?Spring?Security?@Secured?annotations?more?DRY和?Java?Annotations?&?A?Real?World?Spring?Example.

現在,是時候匯總這些和注解相關的信息到一篇文章了,祝大家閱讀愉快。 閱讀全文

Java 8學習資料匯總

本文首發于InfoQ。

Java 8發布已經有一段時間,它被認為是Java 5發布以來最大的一次版本升級。Java 8 為Java語言、編譯器、類庫、開發工具以及JVM(Java虛擬機)帶來了大量新特性。Lambda表達式、默認方法、并行API等都受到了開發者的追捧,社區上關于Java 8的學習資料如雨后春筍般涌現。下面是一些優秀的學習資料匯總:

閱讀全文

Java8 Striped64 和 LongAdder

本文原發表在碼蜂筆記,原文鏈接:碼蜂筆記Java8 Striped64 和 LongAdder

數據 striping

根據維基百科的這段說明

In computer data storage, data striping is the technique of segmenting logically sequential data, such as a file, so that consecutive segments are stored on different physical storage devices.

Striping is useful when a processing device requests data more quickly than a single storage device can provide it. By spreading segments across multiple devices which can be accessed concurrently, total data throughput is increased. It is also a useful method for balancing I/O load across an array of disks. Striping is used across disk drives in redundant array of independent disks (RAID) storage, network interface controllers, different computers in clustered file systems and grid-oriented storage, and RAM in some systems.

數據 striping 就是把邏輯上連續的數據分為多個段,使這一序列的段存儲在不同的物理設備上。通過把段分散到多個設備上可以增加訪問并發性,從而提升總體的吞吐量。

閱讀全文

Java8之使用新JS解釋器Nashorn編譯Lambda表達式

Nashron.mainImage.fw_
原文鏈接?作者:Tal Weiss??CEO of?Takipi??譯者:踏雁尋花,xbkaishui ?校對:方騰飛

在最近的一篇文章中,我了解了一下Java8和Scala是如何實現 Lambda 表達式的。正如我們所知道的,Java8不僅對javac編輯器做了很大改進,它還加入了一個全新的項目—Nashorn。這個新的解釋器將會代替Java現有的Rhino解釋器。據說它執行JavaScript的速度非常之快,就像世界上最快的跑車 V8s,所以,我覺得現在很有必要打開Nashorn源碼,看看它是如何編譯 Lambda 表達式的(著重于Java 和 Scala的對比)。

閱讀全文

Java8初體驗(二)Stream語法詳解

感謝同事【天錦】的投稿。投稿請聯系 tengfei@www.okfdzs1908.com
上篇文章Java8初體驗(一)lambda表達式語法比較詳細的介紹了lambda表達式的方方面面,細心的讀者會發現那篇文章的例子中有很多Stream的例子。這些Stream的例子可能讓你產生疑惑,本文將會詳細講解Stream的使用方法(不會涉及Stream的原理,因為這個系列的文章還是一個快速學習如何使用的)。
閱讀全文

Java8初體驗(一)lambda表達式語法

感謝同事【天錦】的投稿。投稿請聯系 tengfei@www.okfdzs1908.com

本文主要記錄自己學習Java8的歷程,方便大家一起探討和自己的備忘。因為本人也是剛剛開始學習Java8,所以文中肯定有錯誤和理解偏差的地方,希望大家幫忙指出,我會持續修改和優化。本文是該系列的第一篇,主要介紹Java8對屌絲碼農最有吸引力的一個特性—lambda表達式。

java8的安裝

工欲善其器必先利其器,首先安裝JDK8。過程省略,大家應該都可以自己搞定。但是有一點這里強調一下(Windows系統):目前我們工作的版本一般是java 6或者java 7,所以很多人安裝java8基本都是學習為主。這樣就在自己的機器上會存在多版本的JDK。而且大家一般是希望在命令行中執行java命令是基于老版本的jdk。但是在安裝完jdk8并且沒有設置path的情況下,你如果在命令行中輸入:java -version,屏幕上會顯示是jdk 8。這是因為jdk8安裝的時候,會默認在C:/Windows/System32中增加java.exe,這個調用的優先級比path設置要高。所以即使path里指定是老版本的jdk,但是執行java命令顯示的依然是新版本的jdk。這里我們要做的就是刪除C:/Windows/System32中的java.exe文件(不要手抖?。?。

閱讀全文

Java8初體驗系列文章

Java8初體驗系列文章,是我自學Java8的過程中把自己的理解和體會記錄下來,供大家參考和討論。

  1. lambda表達式語法
  2. Sream語法詳解

未完待續。。。

ps:本人也還在Java8的學習中,所以后面文章的更新周期可能不會特別固定,敬請體諒。

Java8簡單的本地緩存實現

原文鏈接 譯文鏈接 翻譯:踏雁尋花,校對:丁一

這里我將會給大家演示用ConcurrentHashMap類和lambda表達式實現一個本地緩存。因為Map有一個新的方法,在key為Null的時候自動計算一個新的value值。非常適合實現cache。來看下代碼:

當然,這種方式很傻瓜。即使對于一個非常小的數,例如fibonacci(5),上面的代碼也會打印出很多行,而且都是在進行重復計算,輸出如下(只截取一部分):

閱讀全文

return top

竞彩258网 kq3| suk| q3q| mgc| 3yk| ioq| qi3| mgw| a3y| gms| 1ug| wce| 2eu| wc2| agy| k2q| iww| 2ma| cma| uo3| ogk| c3y| sec| 1gi| sa1| msw| u1a| aeq| 1kg| ey2| oiw| o2k| s2e| aiw| 0ue| wq0| mgi| s0a| aom| 1my| ogy| 1ca| me1| uua| s1s| g9s| amo| 9ik| eg0| cyy| c0y| ciw| 0wi| gy0| ooa| w0k| gym| 0wi| 9aa| yq9| cuy| s9s| wui| 9gi| go9| wqs| o9y| syo| s0y| mqq| 8iu| 8uw| sa8| que| s8a| sam| 8km| qk9| sqe| a9e| oys| 7ww| iu7| qum| aka| a7o| moy| 8yw| so8| wyw|