每一种语言中,最重要的类型应该就是String
了,为什么字符串用的这么多了,计算机一开始设计出来是为了计算用的,像整型或者浮点数那是最经常用到的,但是后面随着互联网的发展,字符串是最容易传播信息和观念的,可以说这个信心互联网是由一个一个字符组成的。
字符串查找
对于变量来说,在Kotlin
中,我们是可以不需要自定数据类型的,通常我们声明一个变量,并把它数值以后,Kotlin
会自动的识别这个变量的类型,但是如果你不习惯的话,还是把变量类型写上。
val str = " Hello Kotlin"
str
就被自动的识别为String
类型。
我们在查找一个字符串,可以使用 indexOf
,如果找到,返回字符的位置,如果没有找到返回-1
。
val str:String = "Hello Kotlin"
var index = str.indexOf("kotlin",0,true)
indexOf
来说是从头部开始查找,还有lastIndexOf
是从尾部开始查找。具体的用法就相同了。
字符串截取
字符串截取的截取和java的没有什么样的区别,也可以说基本上是通用的,在kotlin
中使用的是 subString
来截取字符串。
参数如下:
- startIndex参数:截取字符串的开始下标
- endIndex参数:截取字符串的结束下标
- rang参数,是指一个IntRang类型
var substr = str.substring(0,10)
同样的 subSequence()
,也可以实现同样的功能。
字符串替换
那就是replace()
函数了:
var newstr = str.replace("Kotlin","World")
如果会使用正则表达式的,还可以这么来使用:
val str1:String = "Hello kotlin 1234"
val newStr = str1.replace(Regex("[0-9]+"),{
"abcd"
})
关于替换的函数还有一下几个:replaceFirst
,replaceBefore
,replaceBeforeLast
,replaceAfter
,replaceAfterLast
。
字符串分割
分割字符串也是同样的,使用的是split()
函数。
str.split(" ")
正则表达式可以这样写:
val str_sp = str1.split(Regex("[0-9]+"))
for (str in str_sp){
println("$str")
}
字符串连接
字符串连接我们可以使用 +
,也可以使用 plus()
,其实 +
最好用。各个语言都支持这种写法。
var str2 = str1 + str
println(str2)
字符串反转
reversed()
翻转整个字符串。
str2.reversed()
字符串的起始与结尾
startsWith
和endsWith
函数,能够判断字符串的开头和结尾,这个也非常有用,我们有的时候在做协议的时候,经常用这个来判断。
str2.startsWith("Kotlin")
小结
我们单独的一节来介绍字符串,字符串的处理在编程中是经常碰到的,而且占得比较比较大,再多的介绍字符串我觉得都不为过,上面的总结只是对字符串的重点功能的介绍,还有很多关于字符串的小功能,如果用到的话,可以在文档中进行查找 ,这里如同抛砖引玉。