Kotlin 基本数据类型-字符串

本文介绍了Scala中的字符串操作,包括使用索引和for循环遍历字符串、字符串的不可变性、转义字符、多行字符串、字符串模板以及模板表达式的应用。
摘要由CSDN通过智能技术生成
1、规则

用 String 类型表示字符串,字符串值是双引号("中的字符序列

val str = "abcd 123"

 可以使用索引运算符: s[i]访问字符串的元素 -- 字符,可以使用 for 循环遍历这些字符

val str = "abcd"

for (c in str) {
    print(c)  
} // abcd

字符串是不可变的,一旦初始化就不能改变它的值或者给它赋新值; 所有转换字符串的操作都以一个新的 String 对象来返回结果,而保持原始字符串不变

    val str = "abcd"
    println(str.uppercase()) // 创建并输出一个新的 String 对象
    println(str) // 原始字符串保持不变

可以用 + 操作符连接字符串,或连接字符串与其他类型的值 (优先使用字符串模板多行字符串而不是字符串连接:即不轻易使用连接的方式构造字符串)

val s = "abc" + 1
println(s + "def")  // abc1def
2、转义字符串

 转义字符串可以包含转义字符,转义采用传统的反斜杠(\)方式

val s = "Hello, world!\n"
3、多行字符串 

多行字符串可以包含换行以及任意文本 ,使用三个引号(""")分界符括起来,内部没有转义但可包含换行以及任何其他字符

val text = """
    for (c in "foo")
        print(c)
"""

 使用 ​trimMargin()​ 删掉多行字符串中的前导空格

//默认以竖线 | 作为边界前缀, 也可以选择其他字符并作为参数传入,比如 trimMargin(">")
val text = """
|Tell me and I forget.
|Teach me and I remember.
|Involve me and I learn.
|(Benjamin Franklin)
    """.trimMargin()

println(text) 
/*
Tell me and I forget.
Teach me and I remember.
Involve me and I learn.
(Benjamin Franklin)
*/
4、字符串模板

 字符串字面值可以包含模板表达式——一些小段代码,会求值并把结果合并到字符串中

模板表达式以美元符($)开头,或由一个的名称构成, 或花括号括起来

    val i = 10
    println("i = $i") // 输出 “i = 10”

    val s = "abc"
    println("$s.length is ${s.length}") // 输出 "abc.length is 3"

    val price = """
    ${'$'}_9.99
    """
    println("$price") // 输出 “$_9.99”

 

  • 4
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值