官术网_书友最值得收藏!

String literals

We've already used String literals in several places at this point. So here, apart from a formal introduction to what a String literal is, we'll take a look at how String literals in Scala are different, since there's more than one way to write String literals. Up till now we've declared String literals within double quotes:

scala> val boringString = "I am a String Literal."
boringString: String = I am a String Literal.

So let's start with a String literal declaration within triple quotes. Sounds interesting! Isn't it? Take a look at this:

scala> val interestingString = """I am an Interesting String
| Also span in multiple Lines!
| Ok, That's it about me"""
interestingString: String =
"I am an Interesting String
Also span in multiple Lines!
Ok, That's it about me"

Got an idea about it after seeing it? A string quoted in triple quotes can be spanned over multiple lines, thus they are called multi-line string literals. These are also called raw strings, because if you try to give any escape character inside triple quotes, these multi-line string literals treat them as normal characters:

scala> val aString = """ / " ' """
aString: String = " / " ' "
scala> println(aString)

/ " '

So these escape characters are treated as defined if inside multi-line strings. This can contain any character, even spaces. There's more to strings, such as string interpolation, where we can dynamically assign values to a string from the current scope. For that, we use interpolators. We'll study these further a little later on in this chapter.

主站蜘蛛池模板: 长春市| 赤峰市| 灵丘县| 离岛区| 体育| 福海县| 临洮县| 江津市| 遂平县| 张北县| 军事| 噶尔县| 肇庆市| 长汀县| 芮城县| 哈密市| 荥阳市| 南宫市| 绥阳县| 依安县| 泽库县| 巴彦县| 墨竹工卡县| 永川市| 和田市| 沭阳县| 定日县| 平定县| 公主岭市| 缙云县| 广昌县| 田阳县| 三亚市| 甘谷县| 苍溪县| 团风县| 信丰县| 灵璧县| 颍上县| 察隅县| 伊川县|