
1. 注解
1.1. 一種使用附加資訊裝飾程式元素的機制
1.2. Java 8之前,只有宣告可以被注解
1.3. 一種語法元資料(syntactic metadata)
1.4. 可以用于檔案編制
1.4.1. @Deprecated注解被廣泛應用于說明某個方法不再推薦使用
1.5. 依據注解檢測錯誤
1.6. 依據注解禁止報警輸出
1.7. 依據注解能生成代碼
2. 重復注解
2.1. 老版的Java禁止對同一個宣告使用多個同類的注解
2.1.1. 宣告一個新的注解,它包含了你希望重復的注解陣列
2.2. 一個注解在設計之初就是可重復的,那么你可以直接使用它
2.2.1. 將注解標記為@Repeatable
2.2.2. 提供一個注解的容器
@Repeatable(Authors.class)
@interface Author { String name(); }
@interface Authors {
Author[] value();
}
3. 型別注解
3.1. 應用于任何型別
3.1.1. new運算子
3.1.2. 型別轉換
3.1.3. instanceof檢查
3.1.4. 泛型型別引數
3.1.5. implements子句
3.1.6. 和throws子句
3.2. Checker框架
3.2.1. 定義了多種型別注解
3.2.2. 增強型別檢查
3.2.3. checkerframework.org
4. 通用目標型別推斷
4.1. 目標型別包括向方法傳遞的引數
4.2. 對泛型引數的推斷進行了增強
4.2.1. 可以推斷泛型引數的型別
5. Map
5.1. getOrDefault
5.1.1. 替換現在檢測Map中是否包含給定鍵映射的慣用方法
5.1.2. 不存在這樣的鍵映射,你可以提供一個默認值,方法會回傳該默認值
5.2. computeIfAbsent
5.2.1. 非常方便地使用快取模式
6. 集合
6.1. removeIf
6.1.1. 移除集合中滿足某個謂詞的所有元素
6.2. Stream API中的filter方法
6.2.1. 產生一個新的流,不會對當前作為資料源的流做任何變更
7. 串列
7.1. replaceAll
7.1.1. 對串列中的每一個元素執行特定的操作,并用處理的結果替換該元素
7.2. Stream中的map方法
7.2.1. 會生成新的元素
8. Collections類
8.1. NavigableMap
8.2. NavigableSet
8.3. checkedQueue
8.3.1. 回傳一個佇列視圖,可以擴展進行動態型別檢查
9. Comparator介面
9.1. reversed
9.1.1. 對當前的Comparator物件進行逆序排序,并回傳排序之后新的Comparator物件
9.2. thenComparing
9.2.1. 當兩個物件相同時,回傳使用另一個Comparator進行比較的Comparator物件
9.3. thenComparingInt
9.4. thenComparingDouble
9.5. thenComparingLong
9.6. 針對基本資料型別
9.6.1. ToIntFunction
9.6.2. ToDoubleFunction
9.6.3. ToLongFunction
9.7. 實體方法
9.8. comparingInt
9.9. comparingDouble
9.10. comparingLong
9.11. 針對基本資料型別
9.11.1. ToIntFunction
9.11.2. ToDoubleFunction
9.11.3. ToLongFunction
9.12. naturalOrder
9.12.1. 對Comparable物件進行自然排序,回傳一個Comparator物件
9.13. nullsFirst、nullsLast
9.13.1. 對空物件和非空物件進行比較,你可以指定空物件(null)比非空物件(non-null)小或者比非空物件大,回傳值是一個Comparator物件
9.14. reverseOrder
9.14.1. 和naturalOrder().reversed()方法類似
9.15. 靜態方法
10. 原子操作
10.1. java.util.concurrent.atomic包
10.2. getAndUpdate
10.2.1. 以原子方式用給定的方法更新當前值,并回傳變更之前的值
10.3. updateAndGet
10.3.1. 以原子方式用給定的方法更新當前值,并回傳變更之后的值
10.4. getAndAccumulate
10.4.1. 以原子方式用給定的方法對當前及給定的值進行更新,并回傳變更之前的值
10.5. accumulateAndGet
10.5.1. 以原子方式用給定的方法對當前及給定的值進行更新,并回傳變更之前的值
10.6. Adder
10.6.1. 盡量避免使用它們對應的原子型別
10.6.2. 支持加法操
10.6.3. LongAdder
10.6.4. DoubleAdder
10.7. Accumulator
10.7.1. 盡量避免使用它們對應的原子型別
10.7.2. 可以使用給定的方法整合多個值
10.7.3. LongAccumulator
10.7.4. DoubleAccumulator
11. ConcurrentHashMap
11.1. 允許并發地進行新增和更新操作
11.2. forEach
11.2.1. 對每個鍵值對進行特定的操作
11.3. reduce
11.3.1. 使用給定的精簡函式(reduction function),將所有的鍵值對整合出一個結果
11.4. search
11.4.1. 對每一個鍵值對執行一個函式,直到函式的回傳值為一個非空值
11.5. 使用鍵和值的操作
11.5.1. forEach
11.5.2. reduce
11.5.3. search
11.6. 使用鍵的操作
11.6.1. forEachKey
11.6.2. reduceKeys
11.6.3. searchKeys
11.7. 使用值的操作
11.7.1. forEachValue
11.7.2. reduceValues
11.7.3. searchValues
11.8. 使用Map.Entry物件的操作
11.8.1. forEachEntry
11.8.2. reduceEntries
11.8.3. searchEntries
11.9. 不會對ConcurrentHashMap的狀態上鎖
11.9.1. 只會在運行程序中對元素進行操作
11.9.2. 應用到這些操作上的函式不應該對任何的順序,或者其他物件,抑或在計算程序發生變化的值,有依賴
11.10. mappingCount
11.10.1. 以長整型long回傳map中映射的數目
11.10.2. 盡量使用這個新方法
11.10.2.1. 映射的數量可能是int無法表示的
11.11. KeySet
11.11.1. 以Set的形式回傳ConcurrentHashMap的一個視圖(對map的修改會反映在該Set中,反之亦然)
11.12. newKeySet
11.12.1. 由ConcurrentHashMap創建一個Set
12. Arrays
12.1. parallelSort
12.1.1. 以并發的方式對指定的陣列進行排序
12.1.2. 可以使用自然順序
12.1.3. 可以為陣列物件定義特別的Comparator
12.2. setAll和parallelSetAll
12.2.1. 以順序的方式也可以用并發的方式,使用提供的函式計算每一個元素的值,對指定陣列中的所有元素進行設定
12.2.2. parallelSetAll需要并發執行,因此提供的函式必須沒有任何副作用
12.3. parallelPrefix
12.3.1. 以并發的方式,利用用戶提供的二進制運算子對給定陣列中的每個元素進行累積計算
13. Number
13.1. Short、Integer、Long、Float和Double類
13.1.1. 靜態方法sum、min和max
13.2. Integer和Long類
13.2.1. compareUnsigned、divideUnsigned、remainderUnsigned和toUnsignedString方法來處理無符號數
13.2.2. 靜態方法parseUnsignedInt和parseUnsigned-Long將字符決議為無符號int或者long型別
13.2.3. Integer類提供了靜態方法toUnsignedLong
13.3. Byte和Short類
13.3.1. toUnsignedInt和toUnsignedLong方法通過無符號轉換將引數轉化為int或者long型別
13.4. Double和Float類
13.4.1. 靜態方法isFinite,可以檢查引數是否為有限浮點數
13.5. Boolean類
13.5.1. 靜態方法logicalAnd、logicalOr和logicalXor,可以在兩個boolean之間執行and、or和xor操作
13.5.2. byteValueExact、shortValueExact、intValueExact和longValueExact,可以將BigInteger型別的值轉換為對應的基礎型別
14. Math
14.1. 使用int和long引數的addExact、subtractExact、multipleExact、incrementExact、decrementExact和negateExact
14.1.1. 新的方法可以拋出算術例外
14.2. 靜態方法toIntExact
14.2.1. 可以將long值轉換為int值
14.3. 靜態方法floorMod、floorDiv和nextDown
15. Files
15.1. 可以用檔案直接產生流
15.2. 靜態方法Files.lines
15.2.1. 以延遲方式讀取檔案的內容,并將其作為一個流
15.3. Files.list
15.3.1. 生成由指定目錄中所有條目構成的Stream?Path?
15.3.2. 不是遞回包含的
15.3.3. 處理包含內容非常龐大的目錄時,這個方法非常有用
15.4. Files.walk
15.4.1. 生成包含給定目錄中所有條目的Stream?Path?
15.4.2. 是遞回的
15.4.3. 可以設定遞回的深度
15.4.4. 遍歷是依照深度優先進行的
15.5. Files.find
15.5.1. 通過遞回地遍歷一個目錄找到符合條件的條目,并生成一個Stream?Path?物件
16. Reflection
16.1. java.lang.reflect.Parameter類
16.1.1. 查詢方法引數的名稱和修飾符
16.2. java.lang.reflect.Executable類
16.2.1. 通用函式和建構式共享的父類
17. String
17.1. join
17.1.1. 用一個分隔符將多個字串連接起來
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/543970.html
標籤:Java
