วิธีที่ดีที่สุดในการสร้างสายยาวอย่างรวดเร็วในทับทิมคืออะไร? ใช้งานได้ แต่ช้ามาก:
str = ""
length = 100000
(1..length).each {|i| str += "0"}
ฉันได้สังเกตเห็นด้วยว่าการสร้างสตริงที่มีความยาวพอเหมาะแล้วต่อท้ายไปยังสตริงที่มีอยู่จนถึงความยาวที่ต้องการนั้นจะทำงานได้เร็วขึ้นมาก:
str = ""
incrementor = ""
length = 100000
(1..1000).each {|i| incrementor += "0"}
(1..100).each {|i| str += incrementor}
ข้อเสนอแนะอื่น ๆ ?
1
วิธีที่ดีที่สุดคือใช้ JRuby และใช้ StringBuffer Oooooh
—
Jonathan Feinberg