- Kotlin 教程
- Kotlin - 首页
- Kotlin - 概述
- Kotlin - 环境搭建
- Kotlin - 架构
- Kotlin - 基本语法
- Kotlin - 注释
- Kotlin - 关键字
- Kotlin - 变量
- Kotlin - 数据类型
- Kotlin - 运算符
- Kotlin - 布尔值
- Kotlin - 字符串
- Kotlin - 数组
- Kotlin - 范围
- Kotlin - 函数
- Kotlin 控制流
- Kotlin - 控制流
- Kotlin - if...else 表达式
- Kotlin - when 表达式
- Kotlin - for 循环
- Kotlin - while 循环
- Kotlin - break 和 continue
- Kotlin 集合
- Kotlin - 集合
- Kotlin - 列表
- Kotlin - 集合
- Kotlin - 映射
- Kotlin 对象和类
- Kotlin - 类和对象
- Kotlin - 构造函数
- Kotlin - 继承
- Kotlin - 抽象类
- Kotlin - 接口
- Kotlin - 可见性控制
- Kotlin - 扩展
- Kotlin - 数据类
- Kotlin - 密封类
- Kotlin - 泛型
- Kotlin - 委托
- Kotlin - 解构声明
- Kotlin - 异常处理
- Kotlin 有用资源
- Kotlin - 快速指南
- Kotlin - 有用资源
- Kotlin - 讨论
Kotlin - 字符串
Kotlin 的字符串数据类型用于存储一系列字符。字符串值必须用双引号 (" ") 或三引号 (""" """) 括起来。
Kotlin 中有两种字符串:一种称为转义字符串,另一种称为原始字符串。
转义字符串用双引号 (" ") 声明,可能包含转义字符,如 '\n'、'\t'、'\b' 等。
原始字符串用三引号 (""" """) 声明,可以包含多行文本,无需任何转义字符。
示例
fun main(args: Array<String>) { val escapedString : String = "I am escaped String!\n" var rawString :String = """This is going to be a multi-line string and will not have any escape sequence"""; print(escapedString) println(rawString) }
运行上述 Kotlin 程序后,将生成以下输出
I am escaped String! This is going to be a multi-line string and will not have any escape sequence
为字符串指定数据类型是可选的,Kotlin 可以根据给定的双引号或三引号识别变量是字符串。
如果要创建未赋值的字符串变量,则必须在声明变量时指定类型,否则会报错。
fun main(args: Array<String>) { val name : String name = "Zara Ali" println(name) }
运行上述 Kotlin 程序后,将生成以下输出
Zara Ali
Kotlin 字符串模板
Kotlin 字符串模板是可以评估其结果并将其插入到字符串中的代码片段。模板表达式以美元符号 ($) 开头,可以包含名称或表达式。
fun main(args: Array<String>) { val name : String = "Zara Ali" println("Name - $name") // Using template with variable name println("Name length - ${name.length}") // Using template with expression. }
运行上述 Kotlin 程序后,将生成以下输出
Name - Zara Ali Name length - 8
Kotlin 字符串对象
Kotlin 字符串是一个对象,它包含许多属性和函数,可以通过在特定字符串变量后编写点字符 (.) 来对字符串执行某些操作。
本章将介绍一些重要的属性和函数,其余内容可在 Kotlin 最新版本的官方文档中找到。
Kotlin 字符串索引
Kotlin 字符串可以被视为一系列字符,或者可以说字符串是字符数组。可以使用方括号指定元素的索引来访问其元素。
字符串索引从 0 开始,因此如果要访问字符串的第 4 个元素,则应将索引指定为 3 以访问第 4 个元素。
示例
fun main(args: Array<String>) { val name : String = "Zara Ali" println(name[3]) println(name[5]) }
运行上述 Kotlin 程序后,将生成以下输出
a A
Kotlin 字符串长度
我们可以使用 Kotlin 字符串的length属性来查找其长度。
Kotlin 函数count()也返回给定字符串的长度。
示例
fun main(args: Array<String>) { val name : String = "Zara Ali" println("The length of name :" + name.length) println("The length of name :" + name.count()) }
运行上述 Kotlin 程序后,将生成以下输出
The length of name :8 The length of name :8
Kotlin 字符串最后一个索引
我们可以使用 Kotlin 字符串的lastIndex属性来查找字符序列中最后一个字符的索引。如果字符串为空,则返回 -1。
示例
fun main(args: Array<String>) { val name : String = "Zara Ali" println("The index of last character in name :" + name.lastIndex) }
运行上述 Kotlin 程序后,将生成以下输出
The index of last character in name :7
更改字符串的大小写
Kotlin 提供了toUpperCase()和toLowerCase()函数,分别用于将字符串转换为大写和小写。
示例
fun main(args: Array<String>) { val name : String = "Zara Ali" println("Upper case of name :" + name.toUpperCase()) println("Lower case of name :" + name.toLowerCase()) }
运行上述 Kotlin 程序后,将生成以下输出
Upper case of name :ZARA ALI Lower case of name :zara ali
Kotlin 字符串连接
我们可以使用+运算符连接两个字符串,也可以使用plus()函数连接两个字符串。
示例
fun main(args: Array<String>) { var firstName : String = "Zara " var lastName : String = "Ali" println("Full Name :" + firstName + lastName) println("Full Name :" + firstName.plus(lastName) ) }
运行上述 Kotlin 程序后,将生成以下输出
Full Name :Zara Ali Full Name :Zara Ali
从字符串中修剪字符
我们可以使用drop()或dropLast()函数从字符串中删除前几个或后几个字符。
示例
fun main(args: Array<String>) { var name : String = "Zara Ali" println("Remove first two characters from name : " + name.drop(2)) println("Remove last two characters from name : " + name.dropLast(2)) }
运行上述 Kotlin 程序后,将生成以下输出
Remove first two characters from name : ra Ali Remove last two characters from name : Zara A
字符串中的引号
要在字符串中使用引号,请使用单引号 (')
示例
fun main(args: Array<String>) { var str1 : String = "That's it" var str2 : String = "It's OK" println("str1 : " + str1) println("str2 : " + str2) }
运行上述 Kotlin 程序后,将生成以下输出
str1 : That's it str2 : It's OK
在字符串中查找字符串
Kotlin 提供了indexOf()函数来查找字符串中的文本。此函数返回字符串中指定文本第一次出现的索引。
示例
fun main(args: Array<String>) { var str : String = "Meditation and Yoga are synonymous with India" println("Index of Yoga in the string - " + str.indexOf("Yoga")) }
运行上述 Kotlin 程序后,将生成以下输出
Index of Yoga in the string - 15
比较两个字符串
Kotlin 提供了compareTo()函数来比较两个字符串。如果两个字符串相等,则此函数返回 0,否则返回 1。
示例
fun main(args: Array<String>) { var str1 : String = "Apple" var str2 : String = "Apple" println(str1.compareTo(str2)) }
运行上述 Kotlin 程序后,将生成以下输出
0
Kotlin getOrNull() 函数
Kotlin 的getOrNull()函数返回给定索引处的字符,如果索引超出此字符序列的范围,则返回 null。
示例
fun main(args: Array<String>) { var name : String = "Zara" println(name.getOrNull(0)) println(name.getOrNull(2)) println(name.getOrNull(100)) }
运行上述 Kotlin 程序后,将生成以下输出
Z r null
Kotlin toString() 函数
Kotlin 的toString()函数返回对象的字符串表示形式。
示例
fun main(args: Array<String>) { var name : String = "Zara Ali" println(name.toString()) }
运行上述 Kotlin 程序后,将生成以下输出
Zara Ali
测验时间 (面试与考试准备)
答案:D
解释
所有提到的语句关于控制流都是正确的。