第一单元: 创建和使用变量(Kotlin)
第一单元创建和使用变量Kotlin核心概念应用程序中有些内容保持不变而另一些内容是可变的。理解变量的本质是编写动态程序的第一步。 本单元学习目标✅ 定义变量并更新其值✅ 为变量选择合适的数据类型✅ 在代码中添加注释 变量和数据类型什么是变量变量是存储数据的容器。可以将变量想象成一个带标签的盒子——盒子上贴着变量名里面装着数据值。通过变量名你可以随时访问或修改其中存储的值。为什么使用变量避免重复代码。当部分内容需要频繁变化时将其定义为变量只需修改一处即可生效。Kotlin 常用数据类型Kotlin 数据类型说明字面量示例String文本Add,catchInt整数32,4324Double双精度浮点数小数2.0,500.3232Float单精度浮点数末尾加f5.0f,1.29fBoolean布尔值仅两个取值true,false⚠️true和false是 Kotlin 的关键字只能取这两个值。适用于只有两种可能性的场景如开关、是否。✍️ 定义和使用变量变量声明语法必须先定义变量然后才能使用它。valname:DataTypeinitialValue// name : 变量名称// DataType: 数据类型// initialValue: 初始值关键字valvsvar关键字含义适用场景val只读不可变变量值确定后不再变化var可写可变变量值需要被更新变量命名规范✅ 使用驼峰命名法camelCase首单词全小写后续单词首字母大写✅ 变量名应清晰表达其存储的值❌ 避免使用模糊的命名如a,temp示例valnumberOfEmails5// ✅ 清晰表达用途valcityNameBeijing// ✅ 语义明确vala5// ❌ 含义不明变量初始值表格中展示的值如Add、32、2.0称为字面量literal——它们是不可变的常量文本。而变量的值是可变的容器。 代码示例声明和使用变量// 定义一个变量 count值为 2valcount:Int2// 使用 println 输出变量的值println(count)// Kotlin 编译器会将 count 替换为它的实际值2// 程序输出// 2表达式任何能求值的代码片段。变量、函数调用等都可以组成表达式。上述count就是一个表达式其值为2。 字符串模板在输出包含变量值的消息时直接使用双引号不会自动插入变量值——编译器会将内容当作纯字符串处理。这时需要用字符串模板。❌ 错误用法双引号内不解析变量funmain(){valcount:Int2println(You have$countunread messages.)// ❌ 直接输出文本 $count不解析}// 输出: You have $count unread messages.✅ 正确用法字符串模板在变量名前加$Kotlin 会自动将其替换为变量的值funmain(){valcount:Int2println(You have$countunread messages.)// ✅ 输出实际值}// 输出: You have 2 unread messages. 类型推断Type Inference当 Kotlin 编译器能够根据初始值推断出变量类型时可以省略类型声明valcount2// 编译器自动推断为 Int 类型// 等价于valcount:Int2⚠️注意如果声明变量时未提供初始值则必须显式指定类型。 更新变量var关键字可变变量应用程序运行时经常需要更新变量的值。例如简化后的购物车逻辑funmain(){varcartTotal0// 初始化购物车总额cartTotal20// 用户添加了一件 20 元的商品println(Total:$cartTotal)}// 输出: Total: 20valvsvar的关键区别funmain(){valcartTotal0cartTotal20// ❌ 编译错误无法对 val 重新赋值}val→ 变量只能赋值一次之后只读可理解为常量var→ 变量可以多次修改值增量运算符和减量运算符funmain(){varcount10println(You have$countunread messages)// You have 10 unread messages// 方式一常规赋值countcount1// 方式二增量运算符更简洁count// 等价于 count count 1println(You have$countunread messages)// You have 12 unread messages// 减量运算符count--// 等价于 count count - 1println(You have$countunread messages)// You have 11 unread messages}// 输出:// You have 10 unread messages// You have 12 unread messages// You have 11 unread messages未完待续 参考学习资源 Android Basics with Compose - Unit 1 Pathway