kotlin: 字符串: substring/subSequence函数

一,功能

substring函数的定义:

@kotlin.internal.InlineOnly
public inline fun String.substring(startIndex: Int): String = (this as java.lang.String).substring(startIndex)

@kotlin.internal.InlineOnly
public inline fun String.substring(startIndex: Int, endIndex: Int): String 
= (this as java.lang.String).substring(startIndex, endIndex)

public fun String.substring(range: IntRange): String = substring(range.start, range.endInclusive + 1)

参数:

  • startIndex参数:截取字符串的开始下标
  • endIndex参数:截取字符串的结束下标
  • range参数,是指一个IntRange类型

subSequence()函数的定义:

其大致和subString()函数一样,但是其不提供只传递startIndex的情况

 

注意:

使用substring(startIndex,endIndex)substring(rang)时的区别

二,例子

代码:

        //处理按钮点击事件
        binding.button1.setOnClickListener {
            var name: String = "helloworld"
            var str = name.substring(0..3)
            var str2 = name.substring(0 until 3)

            println("str = $str, str2 = $str2")

            val strTitle = "Kotlin is a very good programming language"

            println("s = ${strTitle.substring(10)}")  // 当只有开始下标时,结束下标为length - 1
            println(strTitle.substring(0,15))
            println(strTitle.substring(IntRange(0,15)))
        }

运行结果:

image

三,例子

代码:

        //处理按钮点击事件
        binding.button2.setOnClickListener {
            val str = "Kotlin is a very good programming language"

            println(str.subSequence(0,15))
            println(str.subSequence(IntRange(0,15)))
        }

运行结果:

image

posted @ 2025-09-06 08:37  刘宏缔的架构森林  阅读(11)  评论(0)    收藏  举报