Ruby:
การต่อสตริง

วิธีการ:

ใน Ruby, คุณสามารถต่อสตริงด้วยตัวดำเนินการ + หรือเมธอด << ซึ่งแก้ไขสตริงในที่นั้น นี่คือวิธีเชื่อมคำ - หรือนั่นคือ, คำ:

# การใช้ตัวดำเนินการ + ซึ่งส่งคืนสตริงใหม่
greeting = "Hello, " + "world!"
puts greeting # ผลลัพธ์: Hello, world!

# การใช้เมธอด << ซึ่งเปลี่ยนแปลงสตริงต้นฉบับ
name = "Alice"
name << ", meet Bob"
puts name # ผลลัพธ์: Alice, meet Bob

ดำดิ่งลึก

การต่อสตริงได้เกิดขึ้นใน Ruby ตั้งแต่เกิดของมัน แต่ด้วยเวลา, ภาษาได้มอบวิธีมากขึ้นในการร้อยสตริงเข้าด้วยกัน

เราได้กล่าวถึง + และ <<, แต่ยังมีเมธอด concat และการใส่แทรก (interpolation)

  • การใช้ concat: เมธอดนี้เหมือนกับ << แต่ช่วยให้คุณเพิ่มสตริงหลายตัวได้ในครั้งเดียว
phrase = "Roses are red"
phrase.concat(", violets are blue")
puts phrase # ผลลัพธ์: Roses are red, violets are blue
  • การใส่แทรก: นำตัวแปรเข้าสู่สตริงโดยไม่ต้องต่อพวกมันโดยตรง มันสะอาดกว่าและเป็นที่ต้องการสำหรับการใส่ตัวแปร:
mood = "excited"
message = "I am #{mood} to learn Ruby!"
puts message # ผลลัพธ์: I am excited to learn Ruby!

การใส่แทรกทำการเรียก to_s อัตโนมัติสำหรับตัวแปรใด ๆ, รับรองว่าประเภทที่ไม่ใช่สตริงสามารถทำงานร่วมกับสตริงได้

นอกจากนี้, จำไว้ว่า - มันไม่ได้เกี่ยวกับการติดคำกันเท่านั้น; Ruby ยังคงระมัดระวังในเรื่องประสิทธิภาพด้วย เมื่อคุณใช้ +, Ruby สร้างสตริงใหม่ ตลอดเวลาหรือในลูป, อาจเป็นการใช้หน่วยความจำอย่างหนัก. ตรงกันข้าม, << และ concat แก้ไขสตริงต้นฉบับ, ซึ่งมักจะมีประสิทธิภาพมากกว่า

ดูเพิ่มเติม