字元串
scala提供多種定義字元串的方式,将來我們可以根據需要來選擇最友善的定義方式。
- 使用雙引号
- 使用插值表達式
- 使用三引号
使用雙引号
文法
val/var 變量名 = “字元串”
示例
有一個人的名字叫"hadoop",請列印他的名字以及名字的長度。
參考代碼
scala> println(name + name.length)
hadoop6
複制
使用插值表達式
scala中,可以使用插值表達式來定義字元串,有效避免大量字元串的拼接。
文法
val/var 變量名 = s"${變量/表達式}字元串"
[!TIP]
- 在定義字元串之前添加s
- 在字元串中,可以使用${}來引用變量或者編寫表達式
示例
請定義若幹個變量,分别儲存:"zhangsan"、30、"male",定義一個字元串,儲存這些資訊。
列印輸出:name=zhangsan, age=30, sex=male
參考代碼
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語句
參考代碼
val sql = """select
| *
| from
| t_user
| where
| name = "zhangsan""""
println(sql)
複制
但是要注意一點, 三引号字元串不要出現重複, 比如 ""'' aaa """ bbb """
因為, scala編譯器, 從第一個三引号開始, 到第二個三引号結束, 算一個完整的字元串. 後面的就是多出來的文法錯誤的内容