1-7-字符串
字符串类型(String)
实际上String不属于基本数据类型,而属于引用 字符串表示一个或多个有序的Unicode字符集合,用""来表示 String允许通过s index 来获取索引处的字符,也可以使用for循环来遍历
fun main() {
val string = "HelloWorld"
for(char in string) {
println(char)
}
}
/**
* H
* e
* l
* l
* o
* W
* o
* r
* l
* d
*/
Content copied to clipboard
Kotlin 的字符串有两种字面值(Literal),分别如下。
转义字符串: 转义字符串可以有转义字符,转义字符串很像 Java 字符串。
原始字符串 :原始字符串可以包含换行和任意文本。原始字符串需要用 """ 引起来 。
fun main() {
// 转义字符串,支持转义字符,比如换行 \n 和制表符 \t
val escapedString = "Hello, Kotlin!\nWelcome to \"Kotlin\" world.\tEnjoy coding."
println("转义字符串示例:")
println(escapedString)
// 原始字符串,用三重引号包围,可以直接写多行文本,也不用转义引号
val rawString = """
Hello, Kotlin!
Welcome to "Kotlin" world.
This is a raw string with
multiple lines and special characters like \n and \t are literal here.
"""
println("\n原始字符串示例:")
println(rawString)
}
/*
转义字符串示例:
Hello, Kotlin!
Welcome to "Kotlin" world. Enjoy coding.
原始字符串示例:
Hello, Kotlin!
Welcome to "Kotlin" world.
This is a raw string with
multiple lines and special characters like \n and \t are literal here.
*/
Content copied to clipboard
可以看到转义字符串中的转义字符都被转义了, 而原始字符串则保留了原始的转义字符 转义字符串常用方法
trimMargin(”boundary“): boundary指定边界符(默认为|), 边界符前的空格都会被去掉
fun main() {
val text = """
|K
|o
|t
|l
|i
|n
""".trimMargin()
}
//输出
/*
k
o
t
l
i
n
*/
Content copied to clipboard
字符串方法
Kotlin的String中的方法与Java中的方法有所不同
toXxx() 将字符串转换成对应数值
capitalize() 将首字母大写
decapitalize() 将首字母小写
commonPrefixWith() 返回相同的前缀
commonSuffixWith() 返回相同的后缀
var str2 = "crazyit.org"
//返回两个字符串相同的前缀
println (str2.commonPrefixWith("crazyjava.org"))
//返回两个字符串相同的后缀
println(str2 . commonSuffixWith ("fkit.org"))
Content copied to clipboard
contains() 判断是否包含指定的字符序列 Java中String的contains不支持使用正则表达式,而Kotlin则可以
var str3 = "java886"
//判断 str3 是否包含 3 个连续的数字
println(str3.contains(Regex("\\d{3}")))
Content copied to clipboard
更多字符串的方法可以参考 Kotlin核心库中String的文档