图解仓颉编程:基础篇

978-7-115-60075-2
作者: 刘玥
译者:
编辑: 傅道坤
分类: 其他

图书目录:

第 1 章 仓颉编程语言概述 1

1.1 仓颉编程语言简介 2

1.2 我的第 一个仓颉程序: Hello World 3

1.2.1 开发环境搭建 3

1.2.2 Hello World 3

1.3 仓颉程序结构 5

第 2 章 变量与基本数据类型 7

2.1 变量的概念 8

2.2 变量的声明和使用 9

2.2.1 变量的声明 9

2.2.2 变量的使用 12

2.3 基本数据类型 14

2.3.1 整数类型 14

2.3.2 浮点类型 15

2.3.3 布尔类型 18

2.3.4 字符类型 18

2.3.5 字符串类型 19

2.3.6 元组类型 24

2.3.7 区间类型 26

2.3.8 Unit 类型 27

2.3.9 Nothing 类型 28

2.4 小结 28

第 3 章 操作符 31

3.1 概述 32

3.2 算术操作符 32

3.2.1 运算规则 33

3.2.2 算术运算对类型的要求 35

3.2.3 类型推断 36

3.2.4 数值类型的类型转换 37

3.3 自增和自减操作符 38

3.4 关系操作符 39

3.4.1 运算规则 39

3.4.2 数值类型的关系运算 40

3.4.3 字符类型及字符串类型的关系运算 40

3.4.4 布尔类型及 Unit 类型的关系运算 41

3.5 逻辑操作符 42

3.6 位操作符 43

3.7 赋值操作符和复合赋值操作符 45

3.7.1 赋值操作符 45

3.7.2 复合赋值操作符 46

3.8 操作符的优先级和结合性 46

3.9 小结 47

第 4 章 流程控制 49

4.1 概述 50

4.2 顺序结构 52

4.3 分支结构 53

4.3.1 单分支的 if 表达式 53

4.3.2 双分支的 if 表达式 55

4.3.3 嵌套的 if 表达式 56

4.4 循环结构 61

4.4.1 while 表达式 62

4.4.2 do-while 表达式 65

4.4.3 for-in 表达式 68

4.4.4 break 表达式 72

4.4.5 continue 表达式 73

4.4.6 循环的嵌套 74

4.5 各种流程控制表达式的类型 76

4.5.1 if 表达式的类型 76

4.5.2 其他流程控制表达式的类型 78

4.6 小结 79

第 5 章 函数 81

5.1 函数的概念 82

5.2 函数的定义 82

5.2.1 函数定义的方式 82

5.2.2 函数参数 83

5.2.3 函数体 84

5.2.4 函数返回值 86

5.3 函数的调用和执行 87

5.3.1 函数调用的方式 87

5.3.2 参数传递 87

5.3.3 函数调用的执行过程 90

5.4 变量的作用域 92

5.4.1 全局变量的作用域 92

5.4.2 局部变量的作用域 93

5.4.3 同名变量 95

5.5 函数的重载 96

5.6 递归函数 97

5.7 小结 100

第 6 章 面向对象编程(上) 101

6.1 概述 102

6.2 类的定义和对象的创建 102

6.2.1 成员变量 105

6.2.2 成员函数 109

6.2.3 构造函数 110

6.2.4 成员访问 114

6.2.5 类是引用类型 116

6.2.6 组织代码 118

6.3 封装 120

6.3.1 访问控制 121

6.3.2 成员属性 123

6.4 继承 126

6.4.1 定义并继承父类 127

6.4.2 重写和重定义 135

6.5 多态 141

6.5.1 子类型天然是父类型 141

6.5.2 通过继承实现多态 142

6.6 使用组合实现代码复用 145

6.7 struct 类型 147

6.8 小结 151

第 7 章 面向对象编程(下) 153

7.1 抽象类 154

7.1.1 通过抽象函数和抽象类实现多态 155

7.1.2 抽象类及其成员 156

7.1.3 抽象类的继承规则 159

7.2 接口 161

7.2.1 通过接口实现多态 161

7.2.2 定义和实现接口 164

7.2.3 接口的默认实现 168

7.2.4 接口的继承 171

7.2.5 Any 类型 173

7.2.6 面向接口编程示例 174

7.3 子类型关系 178

7.4 小结 179

第 8 章 enum 类型 181

8.1 概述 182

8.2 enum 类型的定义 182

8.3 enum 值的创建 183

8.4 enum 值的模式匹配 184

8.5 Option 类型 186

8.5.1 Option 类型的定义 186

8.5.2 Option 值的创建 186

8.5.3 Option 值的解构 188

8.5.4 使用 as 操作符进行类型转换 191

8.5.5 Option 类型使用示例 194

8.6 小结 198

第 9 章 模式匹配 201

9.1 概述 202

9.2 match 表达式 202

9.2.1 包含待匹配值的 match 表达式 202

9.2.2 不含待匹配值的 match 表达式 204

9.2.3 match 表达式的类型 206

9.3 模式 208

9.3.1 常量模式 208

9.3.2 通配符模式 209

9.3.3 绑定模式 209

9.3.4 类型模式 210

9.3.5 元组模式 211

9.3.6 枚举模式 212

9.3.7 模式的 Refutability 214

9.4 模式的其他用法 216

9.4.1 在变量声明中使用 irrefutable 模式 216

9.4.2 在 for-in 表达式中使用 irrefutable 模式 217

9.4.3 在 if-let 表达式中使用模式 218

9.4.4 在 while-let 表达式中使用模式 220

9.5 小结 221

第 10 章 函数高级特性 223

10.1 函数是“一等公民” 224

10.1.1 函数类型 224

10.1.2 函数作为变量值 225

10.1.3 函数作为实参 226

10.1.4 函数作为返回值 227

10.2 lambda 表达式 228

10.2.1 lambda 表达式的定义 228

10.2.2 lambda 表达式的使用 229

10.2.3 注意事项 231

10.3 嵌套函数 233

10.4 闭包 236

10.4.1 闭包的概念 236

10.4.2 闭包的工作原理和特点 238

10.4.3 使用限制和注意事项 241

10.5 函数重载决议 243

10.6 操作符重载函数 245

10.6.1 操作符重载的规则 245

10.6.2 操作符重载函数的定义和使用 246

10.7 mut 函数 248

10.7.1 struct 中的 mut 函数 249

10.7.2 interface 中的 mut 函数 250

10.7.3 mut 函数的使用限制 251

10.8 函数类型的子类型关系 252

10.9 调用函数时的语法糖 253

10.9.1 尾随 lambda 254

10.9.2 flow 表达式 254

10.9.3 变长参数 256

10.10 小结 258

第 11 章 泛型 259

11.1 概述 260

11.2 泛型函数 261

11.3 泛型类型 263

11.3.1 泛型 class 263

11.3.2 泛型 struct 265

11.3.3 泛型 enum 266

11.3.4 泛型 interface 267

11.3.5 泛型类型的子类型关系 268

11.3.6 类型别名 269

11.4 泛型约束 270

11.5 泛型接口应用示例 273

11.5.1 泛型接口 Equatable 273

11.5.2 泛型接口 Comparable 275

11.6 小结 278

第 12 章 基础 Collection 类型 279

12.1 概述 280

12.2 Array 280

12.2.1 Array 的创建 280

12.2.2 Array 元素的访问 282

12.2.3 Array 元素的修改 286

12.2.4 Array 是引用类型 290

12.3 ArrayList 291

12.3.1 ArrayList 的创建 291

12.3.2 ArrayList 元素的访问和修改 292

12.3.3 ArrayList 元素的添加和删除 294

12.3.4 ArrayList 的容量管理 300

12.4 HashSet 303

12.4.1 HashSet 的创建 304

12.4.2 HashSet 元素的访问 305

12.4.3 HashSet 元素的添加和删除 307

12.5 HashMap 309

12.5.1 HashMap 的创建 310

12.5.2 HashMap 元素的访问 311

12.5.3 HashMap 元素的修改和添加 314

12.5.4 HashMap 元素的删除 316

12.6 接口 Iterable 和 Iterator 317

12.7 用于 Collection 操作的高阶函数 321

12.8 小结 324

第 13 章 包管理 327

13.1 概述 328

13.2 包的声明 329

13.3 顶层声明的可见性 329

13.3.1 顶层声明的默认可见性 329

13.3.2 顶层声明的 public 可见性 330

13.4 顶层声明的导入 333

13.4.1 使用 import 导入其他包中的 public 顶层声明 333

13.4.2 使用 import as 重命名 338

13.4.3 使用 public import 对导入的顶层声明重导出 339

13.5 小结 340

第 14 章 扩展 343

14.1 概述 344

14.2 直接扩展 344

14.3 接口扩展 347

14.4 扩展的导出和导入 351

14.4.1 直接扩展的导出和导入 351

14.4.2 接口扩展的导出和导入 353

14.5 小结 356

第 15 章 标准库中包的应用 359

15.1 概述 360

15.2 生成随机数据 360

15.2.1 生成各种类型的随机数据 360

15.2.2 生成指定范围内的随机整数 361

15.2.3 复现随机数据 362

15.2.4 生成随机数组 362

15.3 通用的数学操作 364

15.4 格式化输出 366

15.5 字符串操作 370

15.6 小结 380

详情

《图解仓颉编程:基础篇》以图解的形式,通过丰富的示例和简明的图表,以通俗易懂的方式阐释了仓颉编程语言的核心基础 知识。 《图解仓颉编程:基础篇》共15章,包括仓颉编程语言概述、变量与基本数据类型、操作符、流程控制、函数、面向对象编程 (上)、面向对象编程(下)、enum 类型、模式匹配、函数高级特性、泛型、基础 Collection 类型、包管理、扩 展、标准库中包的应用。其中,“面向对象编程(上)”和“面向对象编程(下)”这两章涉及一系列重要的概 念,包括类、对象、封装、继承、多态、重写、抽象类和接口等,本书通过一个小型的电商项目贯穿这两章,详细阐明了这些概念。 《图解仓颉编程:基础篇》适合对仓颉编程语言感兴趣的初学者阅读。

图书摘要

相关图书

T20天正建筑V8.0实战从入门到精通
T20天正建筑V8.0实战从入门到精通
Marc 非线性有限元分析标准教程
Marc 非线性有限元分析标准教程
领域驱动设计工作坊
领域驱动设计工作坊
Flask Web应用开发项目实战 基于Python和统信UOS
Flask Web应用开发项目实战 基于Python和统信UOS
图解仓颉编程:高级篇
图解仓颉编程:高级篇
电力安全生产典型事故集——变电检修专业
电力安全生产典型事故集——变电检修专业

相关文章

相关课程