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

The s interpolator

First, we'll look at the s interpolator. We've already seen how we can create a processed String with variables. Now, let's take an example that takes on expressions:

scala> val nextYearAge = s"Next Year, I'll complete ${age + 1}."
nextYearAge: String = Next Year, I'll complete 26.

Here, we used ${...} where a $ sign is followed by a pair of braces {<expression>}, consisting of the expression to be evaluated. It can be any expression. An arithmetic operation like we just did, or a method call:

scala> def incrementBy1(x: Int) = x + 1
incrementBy1: (x: Int)Int

scala> val nextYearAge = s"Next Year, I'll complete ${incrementBy1(age)}."
nextYearAge: String = Next Year, I'll complete 26.

Here, we defined a method named incrementBy1 that increments any Int passed by 1 and gives back the result. We've called that method from our interpolator. By the way, it's good to know that our interpolator s is a method just like any other operator in Scala. We're allowed to create our own interpolators in Scala.

主站蜘蛛池模板: 溆浦县| 南宫市| 金门县| 三门县| 丰台区| 张家界市| 页游| 大丰市| 太康县| 荔浦县| 琼结县| 锡林郭勒盟| 牙克石市| 洛阳市| 凤凰县| 永定县| 闸北区| 尚志市| 台北县| 临夏市| 东城区| 永福县| 镇江市| 乌什县| 布尔津县| 乌苏市| 平昌县| 金乡县| 中牟县| 保定市| 呈贡县| 忻城县| 闵行区| 岢岚县| 万源市| 双鸭山市| 喜德县| 义乌市| 嘉义市| 陈巴尔虎旗| 丹寨县|