Scala for Backend Engineering & Functional Programming · บทเรียน

ตัวแทรก s, f และ raw

ฝังค่าไว้ในสตริง

บทเรียน 2 จาก 413 ขั้นตอน

ตัวแทรก s, f และ raw เป็นบทเรียน Scala for Backend Engineering & Functional Programming ฟรีบน CoddyKit นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Scala for Backend Engineering & Functional Programming และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Scala for Backend Engineering & Functional Programming มีบทเรียนทั้งหมด 4 บทเรียน

การแทรกสตริงคืออะไร

การแทรกสตริงช่วยให้คุณฝังค่าไว้โดยตรงภายในสตริงตามตัวอักษร

แทนที่จะต่อส่วนต่าง ๆ ด้วย + คุณใส่ตัวอักษรนำหน้าก่อนเครื่องหมายอัญประกาศ แล้วอ้างอิงตัวแปรไว้ภายใน Scala มีตัวแทรกสตริงในตัวสามแบบ ได้แก่ s, f และ raw

val name = "Ada"
println(s"Hello, $name!")

ตัวแทรกสตริง s

ตัวแทรกสตริง s เป็นแบบที่ใช้บ่อยที่สุด ใส่ s ไว้หน้าเครื่องหมายอัญประกาศเปิด แล้วใช้ $variable เพื่อแทรกค่า

รูปแบบนี้อ่านเข้าใจได้ชัดเจนกว่าการต่อสตริงด้วย +

val count = 3
println(s"You have $count messages")

นิพจน์ด้วยวงเล็บปีกกา

หากต้องการทำมากกว่าการแทรกตัวแปรธรรมดา ให้ครอบนิพจน์ด้วย ${ }

วิธีนี้ช่วยให้คุณคำนวณเลขหรือเรียกเมธอดภายในสตริงได้โดยตรง

val a = 4
val b = 5
println(s"Sum is ${a + b}")
println(s"Upper: ${"hi".toUpperCase}")

ตัวอย่าง s ที่รันได้

นี่คือตัวอย่างโปรแกรมสมบูรณ์ที่ใช้ตัวแทรกสตริง s เพื่อสร้างข้อความทักทาย

สังเกตว่าตัวแปรถูกแทรกลงในประโยคอย่างเป็นระเบียบ

object Main extends App {
  val user = "Sam"
  val items = 2
  println(s"Hi $user, you bought $items items.")
}

การหลีกเครื่องหมายดอลลาร์

ภายในสตริงที่มีการแทรกสตริง $ มีความหมายพิเศษ หากต้องการพิมพ์เครื่องหมายดอลลาร์ตามตัวอักษร ให้เขียน $$

วิธีนี้มีประโยชน์เมื่อจัดรูปแบบราคา​​หรือสกุลเงิน

val price = 9
println(s"Total: $$$price")

ตัวแทรกสตริง f

ตัวแทรกสตริง f เพิ่มการจัดรูปแบบแบบ printf หลังตัวแปร ให้เพิ่มตัวระบุรูปแบบ เช่น %d สำหรับจำนวนเต็ม หรือ %s สำหรับสตริง

เหมาะอย่างยิ่งสำหรับควบคุมความละเอียดและการจัดแนวของตัวเลข

val n = 42
println(f"Value: $n%d")
val label = "Pi"
println(f"$label%s")

การจัดรูปแบบเลขทศนิยม

ใช้ %f ร่วมกับความละเอียดเพื่อควบคุมจำนวนตำแหน่งทศนิยม ตัวอย่างเช่น %.2f จะแสดงตัวเลขหลังจุดทศนิยมสองหลัก

เหมาะสำหรับจำนวนเงินหรือค่าการวัด

val pi = 3.14159
println(f"Pi is $pi%.2f")
val ratio = 0.5
println(f"Ratio: $ratio%.1f")

ความกว้างและการเติมช่องว่างด้วย f

ตัวแทรกสตริง f ยังสามารถเติมช่องว่างให้ตัวเลขจนถึงความกว้างที่กำหนดได้ %5d จะจัดจำนวนเต็มให้ชิดขวาในช่องที่กว้างห้าอักขระ

วิธีนี้ช่วยให้คอลัมน์ของผลลัพธ์จัดแนวตรงกัน

val x = 7
println(f"[$x%5d]")
println(f"[$x%-5d]")

ตัวแทรกสตริง raw

ตัวแทรกสตริง raw ทำงานคล้าย s แต่จะไม่ประมวลผลลำดับอักขระหลีก

ดังนั้น \n จะยังคงเป็นอักขระสองตัวคือแบ็กสแลชและ n แทนที่จะกลายเป็นบรรทัดใหม่

println(raw"Path: C:\new\test")
println(s"Path: C:\new\test")

การเลือกแบบที่เหมาะสม

ใช้ s สำหรับการแทรกค่าทั่วไป ใช้ f เมื่อต้องการจัดรูปแบบตัวเลข และใช้ raw เมื่อต้องการเก็บแบ็กสแลชตามตัวอักษร เช่น ในเส้นทางไฟล์หรือนิพจน์ทั่วไป

ทั้งสามแบบยังรองรับ $variable และ ${expression}

val v = 1.0
println(s"s: $v")
println(f"f: $v%.2f")
println(raw"raw: $v\n")

หลายค่าร่วมกัน

คุณสามารถรวมตัวแปรและนิพจน์หลายรายการไว้ในสตริงที่มีการแทรกสตริงเดียวกันได้

วิธีนี้ทำให้โค้ดสร้างผลลัพธ์กระชับและอ่านง่ายกว่าการต่อ + ยาว ๆ

object Main extends App {
  val item = "Coffee"
  val qty = 2
  val cost = 4.5
  println(f"$qty x $item = $$${qty * cost}%.2f")
}

ตรวจสอบความเข้าใจ

ตัวแทรกสตริงใดเก็บลำดับอักขระหลีกตามตัวอักษร

สรุป

คุณได้เรียนรู้ตัวแทรกสตริงทั้งสามแบบของ Scala โดย s จะแทรกค่าด้วย $var และ ${expr}

f เพิ่มการจัดรูปแบบแบบ printf เช่น %.2f และ %5d ส่วน raw ทำงานเหมือน s แต่เก็บลำดับอักขระหลีกตามตัวอักษร ใช้ $$ เพื่อพิมพ์เครื่องหมายดอลลาร์จริง

เริ่มต้นได้ฟรี

เรียนรู้ Scala ด้วย AI tutor — ฟรี

เขียนและเรียกใช้โค้ดจริงในเบราว์เซอร์ของคุณ รับความช่วยเหลือทันทีจาก AI tutor 24/7 และเรียนรู้ต่อจากที่คุณหยุดบนเว็บหรือในแอป

คอร์ส
39
บทเรียน
143

คำถามที่พบบ่อย

บทเรียน “ตัวแทรก s, f และ raw” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “ตัวแทรก s, f และ raw” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Scala for Backend Engineering & Functional Programming ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Scala for Backend Engineering & Functional Programming มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “ตัวแทรก s, f และ raw”

ฝังค่าไว้ในสตริง คุณปฏิบัติ Scala for Backend Engineering & Functional Programming ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Scala for Backend Engineering & Functional Programming หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Scala for Backend Engineering & Functional Programming บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน

บทเรียน “ตัวแทรก s, f และ raw” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Scala for Backend Engineering & Functional Programming นี้ได้ไหม

ได้ บทเรียน Scala for Backend Engineering & Functional Programming ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. พื้นฐานสตริง
  2. ตัวแทรก s, f และ raw
  3. เมธอดสตริงทั่วไป
  4. สตริงหลายบรรทัด
← กลับไปที่ Scala for Backend Engineering & Functional Programming