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
แก้ไขสตริงต้นฉบับ, ซึ่งมักจะมีประสิทธิภาพมากกว่า
ดูเพิ่มเติม
- เอกสาร Ruby ประกอบด้วย String: https://ruby-doc.org/core-3.1.2/String.html
- บทความเกี่ยวกับการใส่แทรกสตริง Ruby: https://www.rubyguides.com/2018/11/ruby-string-interpolation/
- คู่มือการใช้งาน operators ใน Ruby: https://www.tutorialspoint.com/ruby/ruby_operators.htm