Kotlin基础知识:字符串
语法特性Lambda
- 前言
- Kotlin相比于 Java
- 遍历
- 分割与正则
- 截取函数
- 去空格
- 三重引号
- 字符串模板
抓住今天,尽可能少的信赖明天。 喝汤能补 (* ^ ▽ ^ *)
前言
该文章作为学习交流,如有错误欢迎各位大佬指正 (* ^ ▽ ^ *)
- 自身技能
(1)已具备计算机的基本知识 - 本文简介
主要讲解:字符串,以及字符串处理相关函数。
Kotlin相比于 Java
- 字符串遍历
- split 传入参数不是正则
- 拆分支持多字符
- 字符串截图多了很多方法
- 去空格多了方法
- 支持三重引号
- 字符串模板
遍历
字符串遍历转换成一个个的 Char 类型。
fun test() {var str = "增加遍历"for (s in str) {println(s)}
}
分割与正则
Kotlin中split函数,默认不会把传入的参数当做正则表达式。同时Kotlin 的 split 方法还允许传入多个拆分符。
fun test2() {val str = "推荐;关注;热搜;影视"val strs = str.split(";")for (s in strs) {println(s)}
}fun test3() {val str = "关注;热搜;影视+同城+学习"val strs = str.split(";","+")for (s in strs) {println(s)}
}
如果将传入的参数作为正则表达式,则需要使用toRegex函数。eg:
fun test4() {val str = "关注;热搜;影视;学习"val strs = str.split(";".toRegex())for (s in strs) {println(s)}
}
截取函数
kotlin提供的截取函数比较多,如substring、substringBeforeLast、substringAfterLast
fun test6() {val str = "关注;热搜;影视+同城+学习"println("--> ${str.substringBeforeLast("+")}")println("--> ${str.substringAfterLast("+")}")
}
fun test5() {val str = "关注;热搜;影视+同城+学习"println("--> ${str.substring(2,6)}")
}
去空格
- trim:去除字符串前后空格
- trimStart:去除字符串前面空格
- trimEnd:去除字符串后面空格
- trimMargin:去除每行前面的空格
fun test7() {val str = " < Version > V1.2.3 TS "println(str.trim())println(str.trimStart())println(str.trimEnd())
}fun test8() {val str =""" |1Version|2Version|3Version|end""".trimMargin()println(str.trimMargin())
}
三重引号
特殊字符,需要用到转义字符串,比如\t,\b,\n,\r。Kotlin 除了前面的转义字符串方式,还可以由三重引号(”””)分割,可以直接包含任意的特殊字符。
fun test9() {// 转义字符val str = "数据位\n为结束标志"println(str)// """ 符号中,可输入任意格式val strLin = """数据位为结束标志 tab缩进"""println(strLin)}
字符串模板
Kotlin对字符串拼接和格式化输出,使用了字符串模板,具体表现为:
- 在字符串中进行变量输出,语法格式${变量}
fun test10() {var num = 8var addStr = " num is ${num}"println(addStr)
}
- 在字符串中进行变量输出,可以省去大括号,语法格式$变量
fun test11() {var num2 = 10var str = " num2 is $num2"println(str)
}
- 在字符串中调用其他方法,语法格式${方法()}
fun test12() {var str = " result is ${getRet()}"println(str)
}fun getRet(): String {return "error!"
}
- 在字符串中执行表达式, 语法格式${表达式}
fun test13() {var ret = "09,0x11,0x23,0xA1"println(" Hex is ${ret.replace(",0x"," ")}")
}
觉得有帮助的点下赞哟,毕竟三连步骤更多,嘻嘻,谢谢大家的支持(* ^ ▽ ^ *)
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
