字符串
scala提供多种定义字符串的方式,将来我们可以根据需要来选择最方便的定义方式。
- 使用双引号
- 使用插值表达式
- 使用三引号
使用双引号
语法
val/var 变量名 = “字符串”
示例
有一个人的名字叫"hadoop",请打印他的名字以及名字的长度。
参考代码
代码语言:javascript复制scala> println(name name.length)
hadoop6
使用插值表达式
scala中,可以使用插值表达式来定义字符串,有效避免大量字符串的拼接。
语法
val/var 变量名 = s"${变量/表达式}字符串"
[!TIP]
- 在定义字符串之前添加s
- 在字符串中,可以使用${}来引用变量或者编写表达式
示例
请定义若干个变量,分别保存:"zhangsan"、30、"male",定义一个字符串,保存这些信息。
打印输出:name=zhangsan, age=30, sex=male
参考代码
代码语言:javascript复制scala> val name = "zhangsan"
name: String = zhangsan
scala> val age = 30
age: Int = 30
scala> val sex = "male"
sex: String = male
scala> val info = s"name=${name}, age=${age}, sex=${sex}"
info: String = name=zhangsan, age=30, sex=male
scala> println(info)
name=zhangsan, age=30, sex=male
使用三引号
如果有大段的文本需要保存,就可以使用三引号来定义字符串。例如:保存一大段的SQL语句。三个引号中间的所有字符串都将作为字符串的值。
语法
val/var 变量名 = """字符串1 字符串2"""
示例
定义一个字符串,保存以下SQL语句
select * from t_user where name = "zhangsan"
打印该SQL语句
参考代码
代码语言:javascript复制val sql = """select
| *
| from
| t_user
| where
| name = "zhangsan""""
println(sql)
但是要注意一点, 三引号字符串不要出现重复, 比如 ""'' aaa """ bbb """
因为, scala编译器, 从第一个三引号开始, 到第二个三引号结束, 算一个完整的字符串. 后面的就是多出来的语法错误的内容