Standard Library Utilities
String Builder Append
Build a small string step by step.
mutable-builder
`StringBuilder` is a standard mutable helper for incremental text construction. Call `toString` when the final immutable string is ready.
String Builder Append
StringBuilderAppend.scala
Replay: real traced execution (multi-file project)
object Main {
def main(args: Array[String]): Unit = {
val count = 3
val builder = new StringBuilder("item")
builder.append(":")
builder.append(count)
val label = builder.toString
val length = label.length
println("label=" + label)
println("length=" + length)
}
}
object Main {
def main(args: Array[String]): Unit = {
val count = 1
val builder = new StringBuilder("item")
builder.append(":")
builder.append(count)
val label = builder.toString
val length = label.length
println("label=" + label)
println("length=" + length)
}
}
object Main {
def main(args: Array[String]): Unit = {
val count = 5
val builder = new StringBuilder("item")
builder.append(":")
builder.append(count)
val label = builder.toString
val length = label.length
println("label=" + label)
println("length=" + length)
}
}
count ← 3, builder ← item, label ← item:3, builder.toString ← item:3
1object Main {2 def main(args: Array[String]): Unit = {3 val count→ 3 = 3 //@count=1, 54 val builder→ item = new StringBuilder("item")5 builder→ item:.append(":")6 builder→ item:3.append(count3)7 val label→ item:3 = builder.toString→ item:38 val length→ 6 = label.length→ 6910 println("label=" + labelitem:3)11 println("length=" + length6)12 }13}outputlabel=item:3 length=6
count ← 1, builder ← item, label ← item:1, builder.toString ← item:1
1object Main {2 def main(args: Array[String]): Unit = {3 val count→ 1 = 14 val builder→ item = new StringBuilder("item")5 builder→ item:.append(":")6 builder→ item:1.append(count1)7 val label→ item:1 = builder.toString→ item:18 val length→ 6 = label.length→ 6910 println("label=" + labelitem:1)11 println("length=" + length6)12 }13}outputlabel=item:1 length=6
count ← 5, builder ← item, label ← item:5, builder.toString ← item:5
1object Main {2 def main(args: Array[String]): Unit = {3 val count→ 5 = 54 val builder→ item = new StringBuilder("item")5 builder→ item:.append(":")6 builder→ item:5.append(count5)7 val label→ item:5 = builder.toString→ item:58 val length→ 6 = label.length→ 6910 println("label=" + labelitem:5)11 println("length=" + length6)12 }13}outputlabel=item:5 length=6