目 錄
第1篇 基礎語法篇\t1
第1章 Kotlin初入門\t2
1.1 練習環(huán)境配置\t2
1.2 Hello World程序\t9
1.3 常量與變量\t11
第2章 Kotlin基礎\t15
2.1 整數型和類型推斷\t15
2.2 浮點型(小數)\t17
2.3 類型安全\t18
2.4 布爾型\t18
2.5 元組\t20
2.6 可空類型(nullable)\t20
2.7 基礎操作符\t21
2.8 package和import\t25
2.9 異常處理和類初始化\t26
2.10 引用相等和結構相等\t27
2.11 區(qū)間(Range)\t28
2.12 控制流作為表達式\t29
2.13 函數返回\t34
2.14 類型層級\t34
2.15 循環(huán)\t35
第3章 控制流\t37
3.1 二元判斷\t37
3.2 循環(huán)\t38
3.3 多元判斷\t44
第4章 字符串和字符\t46
4.1 字符串\t46
4.2 字符\t52
第5章 函數\t54
5.1 函數定義和使用\t54
5.2 函數的作用范圍\t56
5.3 命名參數和默認參數\t60
5.4 函數操作符\t63
5.5 函數擴展\t68
5.6 函數字面量\t71
5.7 尾遞歸函數\t72
5.8 標準庫函數\t73
5.9 泛型函數\t77
第6章 Lambda和高階函數\t79
6.1 Lambda表達式\t79
6.2 高階函數\t81
第7章 集合類型\t84
7.1 Array數組\t84
7.2 MutableList可變列表\t92
7.3 Set\t94
7.4 MutableSet\t96
7.5 Java中的各種集合\t97
7.6 Map\t97
7.7 MutableMap\t102
7.8 集合類型共性詳解\t104
第2篇 面向對象篇\t113
第8章 初識對象\t114
8.1 萬物皆對象\t114
8.2 用Kotlin描述對象\t115
8.3 愉快的構造\t121
8.4 屬性\t128
第9章 類的進階\t136
9.1 繼承\(zhòng)t136
9.2 抽象類,重寫和重載\t144
9.3 接口\t146
9.4 修飾符\t152
9.5 擴展\t160
第10章 多彩的類\t173
10.1 數據類\t173
10.2 密封類\t183
10.3 泛型\t186
10.4 嵌套類\t195
10.5 枚舉類\t201
10.6 對象\t213
10.7 委托\(zhòng)t223
第11章 關于對象的小細節(jié)\t241
11.1 類型檢查與類型轉換\t241
11.2 異常錯誤處理\t246
11.3 結構相等與引用相等\t254
11.4 this表達式\t257
11.5 類型別名\t263
第12章 面向對象高級部分\t268
12.1 操作符重載\t268
12.2 反射\t282
12.3 維護初步\t288
第3篇 Kotlin安卓開發(fā)篇
第13章 UI界面基礎\t296
13.1 Android UI簡介\t296
13.2 基類View和容器ViewGroup\t296
13.3 Anko簡介\t302
13.4 Anko Layout DSL\t302
13.5 基本布局\t315
13.6 基礎UI組件\t331
13.7 進階UI組件\t353
第14章 Activity與Fragment\t367
14.1 Activity\t367
14.2 Fragment\t375
第15章 Service與Broadcast Receiver\t380
15.1 Service\t380
15.2 Android廣播接收器(Broadcast Receivers)\t396
第16章 Kotlin多線程編程\t404
16.1 進程?線程?\t404
16.2 Android開發(fā)中多線程的必要性\t405
16.3 Kotlin中的Executors\t414
第17章 Android數據存儲\t416
17.1 SharePreferences\t416
17.2 文件存儲數據\t418
17.3 SQLite數據庫存儲數據\t421
17.4 ContentProvider存儲數據\t430
17.5 網絡存儲數據\t433
第18章 Kotlin網絡編程\t434
18.1 基于TCP/IP 協(xié)議棧的網絡編程\t434
18.2 基于HTTP的網絡通信\t436
18.3 HTTPConnection\t438
18.4 HTTP庫Fuel\t439
18.5 數據交換格式-JSON簡介\t443
18.6 Demo:IP查詢\t445
18.7 WebView\t450
第19章 Demo:天氣\t462
19.1 架構設計\t462
19.2 分析數據源\t462
19.3 Android 開發(fā)\t471
第20章 Demo:網易云音樂\t500
20.1 項目簡介\t500
20.2 服務器端部署\t500
20.3 Android端開發(fā)\t501
20.4 用戶登錄界面與功能\t505
20.5 主界面\t510
20.6 Rank排行榜\t511
20.7 Rank子頁面\t520
20.8 播放頁\t524
20.9 私人FM\t536
20.10 個人頁面\t542