Java經典實例(第4版) Java Cookbook: Problems and Solutions for Java Developers 4/e

IanF.Darwin 譯者 蘇金國

買這商品的人也買了...

商品描述

本書的主要內容包括:編譯、運行和調試方法。
打包Java類和構建應用。
處理、比較和重新組織文本。
完成字符串和模式匹配的正則表達式。
處理數字、日期和時間。
利用集合、數組和其他類型建立數據結構。
面向對象和函數式編程技術。
輸入/輸出、目錄和文件系統操作。
客戶端和服務器端網絡編程。
處理JSON實現數據交換。
多線程和併發。
大數據應用中使用Java。
Java與其他語言的交互。

目錄大綱

前言
第1章入門:編譯與執行Java
1.0 引言
1.1 編譯與執行Java:標準JDK
1.2 編譯與執行Java:GraalVM提升效能
1.3 用IDE編譯、執行與測試
1.4 用JShell探索Java
1.5 有效地使用CLASSPATH
1.6 下載與使用代碼示例
1.7 用ApacheMaven自動管理依賴、編譯、測試和部署
1.8 用Gradle自動管理依賴、編譯、測試和部署
1.9 處理廢棄警告
1.10 利用單元測試維護代碼正確性:JUnit
1.11 利用持續集成維護代碼
1.12 獲取可讀取的堆疊軌跡
1.13 尋找更多Java原始碼
1.14 尋找可運行的Java庫
第2章環境互動
2.0 引言
2.1 取得環境變數
2.2 從系統屬性取得資訊
2.3 處理依賴Java版本或作業系統的程式碼
2.4 使用擴充或其他打包API
2.5 使用Java模組系統
第3章字串相關問題
3.0 引言
3.1 利用子字串或詞法分析分解字串
3.2 用Stringuilder合併字串
3.3 逐字元處理字串
3.4 字串對齊、縮排和取消縮排
3.5 Unicode字元與字串之間的轉換
3.6 按單字或字元逆轉字串
3.7 展開和壓縮製表符
3.8 控制大小寫
3.9 輸入非列印字元
3.10 刪除字串末尾的空白符
3.11 使用國際化資源建立訊息
3.12使用特定的本地化環境
3.13 建立資源包
3.14 程式:一個簡單的文字格式化工具
3.15 程式:Soundex名字比較
第4章使用正規表示式實作模式比對
4.0 引言
4.1 正規表示式語法
4.2 在Java中使用正規表示式:測試模式
4.3 尋找符合文字
4.4 取代符合文字
4.5 列印一個模式的所有符合
4.6 列印包含一個模式的行
4.7 用正規表示式控制大小寫
4.8 符合重音或組合字元
4.9 符合文字中的換行符
4.10 程式: Apache日誌檔解析
4.11 程式:完整的Grep
第5章數字
5.0 引言
5.1 檢查字串是否是一個合法的數
5.2 數字與物件的轉換
5.3 直接使用分數而不使用浮點數
5.4 處理浮點數
5.5 格式化數字
5.6二進位、八進位、十進位和十六進位間的轉換
5.7 處理整數序列
5.8 格式化為正確的複數形式
5.9 產生隨機數
5.10 矩陣乘法
5.11 使用複數
5.12 處理非常大的數
5.13 程式:TempConverter
5.14 程式:數字回文
第6章日期和時間
6.0 引言
6.1 取得當天日期
6.2 格式化日期和時間
6.3 日期/時間、YMDHMS和紀元秒之間的轉換
6.4 將字串解析為日期
6.5 兩個日期之差
6.6 日期加上或減去一個時間段
6.7 處理重複事件
6.8 計算涉及時區的日期
6.9 與遺留Date和Calendar類交互
第7章Java資料結構
7.0 引言
7.1 用數組建立資料結構
7.2 調整數組大小
7.3 集合框架
7.4 與數組類似,但更動態
7.5 自己的類別中使用泛型類型
7.6 所有迭代方法
7.7 用Set避免重複
7.8 用鍊錶建立資料結構
7.9 用Hashtale和HashMap建立映射
7.10 在Properties和Preferences中儲存字串
7.11 集合排序
7.12 避免明確排序集合
7.13 在集合中尋找物件
7.14 將一個Collection轉換為陣列
7.15 讓資料可迭代
7.16 使用物件
堆疊7.17 多維結構
7.18 用Lomok或Record簡化資料物件
7.19 程式:計時比較
第8章物件導向技術
8.0 物件導向
8.1 物件方法:用toString()格式化對象,用equals比較對象
8.2 使用內部類別
8.3 透過介面提供回調
8.4 多態/抽象方法
8.5 使用類型安全的枚舉
8.6 用Optional避免NPE
8.7 保證單例模式
8.8 創建自己的異常
8.9使用依賴注入
8.10 程式:繪圖儀
第9章函數式程式設計技術:函數介面、串流與平行集合
9.0 引言
9.1 使用Lamda/Closures而非內部類別
9.2 使用lamda預訂介面而非自訂介面
9.3 以Stream簡化處理
9.4 用Collector簡化流
9.5 用並行流和集合提高吞吐量
9.6 利用方法引用將已有代碼用作為函數式接口
9.7 JavaMixin:方法混入
第10章輸入和輸出:讀、寫和目錄技巧
10.0 引言
10.1 關於InputStream /OutputStream和Reader/Writer
10.2 讀取文字檔案
10.3 從標準輸入或控制台/控制終端讀取
10.4 用Formatter和printf列印
10.5 用StreamTokenizer掃描輸入
10.6 用Scanner類別掃描輸入
10.7 掃描有語法結構的輸入
10.8 複製檔案
10.9重新分配標準流
10.10 寫入時複製流,重新分配標準流
10.11 讀/寫不同的字符集
10.12 討厭的行尾字符
10.13 當心依賴平台的文件代碼
10.14 讀/寫二進制數據10.15 讀寫JAR或ZIP 使用歸檔10.16 使用歸檔
10.16 使用歸檔10.16 使用歸檔
10.16 使用歸檔10.16 getResource()和getResourceAsStream()
採用檔案系統中立方式找出檔案
10.17 取得檔案資訊:Files和Path
10.18 建立新檔案或目錄