Kotlin 字符串
字符串用于存储文本。
字符串包含由双引号包围的字符集合:
示例
var greeting = "Hello"
与 Java
不同,您不必指定变量是字符串。Kotlin 足够智能,可以通过双引号理解上例中的 greeting
变量是字符串。
然而,与其他数据类型一样,如果您坚持,可以指定类型:
示例
var greeting: String = "Hello"
注意:如果您想创建一个字符串但不赋值(并稍后赋值),您必须在声明变量时指定类型:
示例
这样是可以的:
var name: String
name = "John"
println(name)
示例
这样会产生错误:
var name
name = "John"
println(name)
访问字符串
要访问字符串的字符(元素),必须在方括号内引用索引号。
字符串索引从 0
开始。在下面的示例中,我们访问 txt
中的第一个和第三个元素:
示例
var txt = "Hello World"
println(txt[0]) // 第一个元素 (H)
println(txt[2]) // 第三个元素 (l)
[0]
是第一个元素,[1]
是第二个元素,[2]
是第三个元素,等等。
字符串长度
Kotlin 中的字符串是对象,包含可以对字符串执行某些操作的属性和函数,通过在特定字符串变量后写一个点字符(.
)。例如,可以使用 length
属性找到字符串的长度:
示例
var txt = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
println("txt 字符串的长度是: " + txt.length)
字符串函数
有许多可用的字符串函数,例如 toUpperCase()
和 toLowerCase()
:
示例
var txt = "Hello World"
println(txt.toUpperCase()) // 输出 "HELLO WORLD"
println(txt.toLowerCase()) // 输出 "hello world"
比较字符串
compareTo(string)
函数比较两个字符串,如果两者相等则返回 0
:
示例
var txt1 = "Hello World"
var txt2 = "Hello World"
println(txt1.compareTo(txt2)) // 输出 0 (它们相等)
查找字符串中的字符串
indexOf()
函数返回指定文本在字符串中首次出现的位置(包括空格):
示例
var txt = "Please locate where 'locate' occurs!"
println(txt.indexOf("locate")) // 输出 7
记住,Kotlin 从零开始计数。
0
是字符串中的第一个位置,1
是第二个,2
是第三个……
字符串中的引号
要在字符串中使用引号,使用单引号('
):
示例
var txt1 = "It's alright"
var txt2 = "That's great"
字符串连接
可以在字符串之间使用 +
运算符将它们添加在一起,形成一个新的字符串。这称为连接:
示例
var firstName = "John"
var lastName = "Doe"
println(firstName + " " + lastName)
请注意,我们添加了一个空文本(" "
)以在打印时在 firstName
和 lastName
之间创建一个空格。
您还可以使用 plus()
函数连接两个字符串:
示例
var firstName = "John "
var lastName = "Doe"
println(firstName.plus(lastName))
字符串模板/插值
除了连接,您还可以使用“字符串模板”,这是一种在字符串中添加变量和表达式的简单方法。
只需使用 $
符号引用变量:
示例
var firstName = "John"
var lastName = "Doe"
println("My name is $firstName $lastName")
“字符串模板”是 Kotlin 的一个流行特性,因为它减少了代码量。例如,您不必像在连接示例中那样在 firstName
和 lastName
之间指定空格。
最后
为了方便其他设备和平台的小伙伴观看往期文章:
微信公众号搜索:Let us Coding
,关注后即可获取最新文章推送
看完如果觉得有帮助,欢迎 点赞、收藏、关注
1.本站内容仅供参考,不作为任何法律依据。用户在使用本站内容时,应自行判断其真实性、准确性和完整性,并承担相应风险。
2.本站部分内容来源于互联网,仅用于交流学习研究知识,若侵犯了您的合法权益,请及时邮件或站内私信与本站联系,我们将尽快予以处理。
3.本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
4.根据《计算机软件保护条例》第十七条规定“为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬。”您需知晓本站所有内容资源均来源于网络,仅供用户交流学习与研究使用,版权归属原版权方所有,版权争议与本站无关,用户本人下载后不能用作商业或非法用途,需在24个小时之内从您的电脑中彻底删除上述内容,否则后果均由用户承担责任;如果您访问和下载此文件,表示您同意只将此文件用于参考、学习而非其他用途,否则一切后果请您自行承担,如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。
5.本站是非经营性个人站点,所有软件信息均来自网络,所有资源仅供学习参考研究目的,并不贩卖软件,不存在任何商业目的及用途
暂无评论内容