在 Scala 中格式化字串

Mohammad Irfan 2023年1月30日 2022年5月18日
  1. 在 Scala 中建立字串
  2. 在 Scala 中使用 s 佔位符進行字串格式化
  3. 在 Scala 中使用 f 佔位符進行字串格式化
  4. 在 Scala 中使用 raw 佔位符進行字串格式化
  5. 使用 Scala 中的 format() 函式格式化字串
在 Scala 中格式化字串

在本教程中,我們將討論 Scala 中的字串格式化過程。

字串是字元序列,是 Java 中的不可變資料型別。我們可以使用字串文字建立一個字串,並使用加號(+)運算子附加(連線)。

建立字串後,Scala 提供了幾種格式化字串的方法,使其更具可讀性。在 Scala 中,我們可以使用字串插值來格式化字串。

在 Scala 中建立字串

我們通過將它分配給一個變數並列印它來建立一個字串。

object MyClass {
    def main(args: Array[String]) {
        var str = "Scala String"
        print(str)
    }
}

輸出:

Scala String

正如我們已經提到的,字串是不可變的,修改字串不會改變原始字串。在這裡,我們建立了一個字串,然後通過使用加號 (+) 運算子新增一個新字串來修改它。

object MyClass {
    def main(args: Array[String]) {
        var str = "Scala String"
        "Hello "+str
        print(str)
    }
}

輸出:

Scala String

在 Scala 中使用 s 佔位符進行字串格式化

字串插值是在 Scala 中格式化字串的過程。它提供了一些我們可以與字串一起使用的鍵/佔位符。

我們在字串中使用了 s 佔位符,允許在字串中使用變數並在執行期間替換為值。

object MyClass {
    def main(args: Array[String]) {
        var a = 10
        var b = 20.5;
        println(s"value of a = $a")
        println(s"value of b = $b")
    }
}

輸出:

value of a = 10
value of b = 20.5

在 Scala 中使用 f 佔位符進行字串格式化

我們將 f 與字串一起使用,允許在字串中使用變數並在執行期間替換為值。變數必須在變數中包含 $

object MyClass {
    def main(args: Array[String]) {
        var a = 10
        var b = 20.5;
        println(f"value of a = $a")
        println(f"value of b = $b")
    }
}

輸出:

value of a = 10
value of b = 20.5

在 Scala 中使用 raw 佔位符進行字串格式化

如果要列印包含所有格式符號的原始字串,請使用 raw 佔位符作為字串的字首。你可以清楚地瞭解在輸出中使用或不使用此佔位符列印字串之間的區別。

object MyClass {
    def main(args: Array[String]) {
        var a = "Scala \tstring \n formatting"
        var b = raw"Scala \tstring \n formatting"
        println(a)
        println(b)
    }
}

輸出:

Scala string
 formatting
Scala \tstring \n formatting

使用 Scala 中的 format() 函式格式化字串

Scala 提供了一個字串函式 format(),它充當 C 的 print() 函式。它用於建立可以在程式碼中的任何位置使用的格式化字串。

object MyClass {
    def main(args: Array[String]) {
        var a = 1
        var b = 10
        var str1 = "This is %s string".format(a)
        var str2 = "This is %s string".format(b)
        println(str1)
        println(str2)
    }
}

輸出:

This is 1 string
This is 10 string

相關文章 - Scala String