kotlin字符串

字符串和基本类型的转换

kotlin直接调用toxx方法,比Java使用包装类简单很多。

字符串转换目标 Kotin的转换方式 Java的转换方式
字符串转整型 toInt方法 Integer.parseInt
字符串转长整型 toLong方法 Long.parselLong
字符串转浮点数 toFloat方法 Float.parseFloat
字符串转双精度 toDouble方法 Double.parseDouble
字符串转布尔型 toBoolean方法 Boolean.parseBoolean
字符串转字符数组 toCharArray方法 tocharArray

显而易见,Kotlin对字符串的类型转换方式更友好,也更方便记忆。

字符串常用方法

分割字符串

变量名.split(),返回List<String>

var aa:String="1,2,3,4"
var strlist:List<String> = aa.split(",")
for (i in strlist){
    print(i)
}

截取指定位置

使用下标或者get()方法

取文本左边

变量名.substring()

开始位置,结束位置

不写结束位置则为从开始位置截取后面全部

取文本长度

print(aa.length)

工具类

object StrUtil {
    /**
     * 取文本左边
     * 全部文本
     * 取出长度
     */
    fun strGetLeft(Str: String, length: Int): String {
        return Str.substring(0, length)
    }

    /**
     * 取文本右边
     *全部文本
     * 取出长度
     * 如果右边位置大于文本长度,则直接返回全文本
     */
    fun strGetRight(Str: String, length: Int): String {
        if (length >= Str.length) {
            return Str
        }
        return Str.substring(Str.length - length, Str.length)
    }

    /**
     * 取文本中间
     * 全部文本
     * 开始位置
     * 取出长度
     * 如果取出长度大于文本长度,则直接返回全部文本
     */
    fun strGetMid(Str: String, Start: Int, length: Int): String {
        if (length >= Str.length || Start >= Str.length) {
            return Str
        }
        return Str.substring(Start, Start + length)
    }

    /**
     * 寻找文本,相当于Str.indexOf
     */
    fun strFind(Str: String, findStart: String, Start: Int): Int {
        return Str.indexOf(findStart, Start)
    }

    /**
     * 到大写
     */
    fun strUpperCase(Str: String):String{
        return Str.toUpperCase()
    }

    /**
     * 到小写
     */
    fun strLowerCase(Str: String):String{
        return Str.toLowerCase()
    }

    /**
     * 删首尾空
     */
    fun strDelTrim(Str: String):String{
        return Str.trim()
    }
    /**
     * 删全部空
     */
    fun strDelAllTrim(Str: String):String{
        return Str.replace(" ", "")
    }

    /**
     * 子文本替换
     */
    fun strReplaceSub(Str: String,oldStr:String,newStr:String):String{
        return Str.replace(oldStr, newStr)
    }

    /**
     * 分割文本
     */
    fun strSplit(Str: String,splitStr:String):List<String>{
        return Str.split(splitStr)
    }

}

字符串拼接

使用$,字符串可以直接插入变量名

var name:String="渣渣辉"
print("大家好,我是$name")

如果变量要进行运算,需要用大括号包裹

var name:String="渣渣辉"
print("文本长度${name.length}")

输出$,由于$为特殊字符,所以要输出的话,需要转义。

单个字符转义,直接前面加\即可【新版本的kotlin自动识别,可以不加原样输出,如果有同意变量名,必须加】

var name:String="渣渣辉"
print("变量名称为\$name")

 

THE END