เขียนภาษา Ruby สร้างตัวแปรพร้อมค่าเริ่มต้น 10 จากนั้นต้องการบวกค่าเพิ่มอีก 10 และแสดงผลลัพธ์ออกสู่หน้าจอ แต่พอรันแล้วไม่สำเร็จขึ้นข้อความ Error ว่า no implicit conversion of Integer into String โค้ดบางส่วนตามด้านล่าง อยากทราบวิธีแก้ไขปัญหา
i = '10'
i = i + 10
puts "ตัวแปร i มีค่าเท่ากับ #{i}"
วิธีแก้ไข
ปัญหานี้เกิดจากตัวแปร i เป็นชนิด String หากต้องการบวกค่าตัวเลขเพิ่มแนะนำให้แปลงค่าของตัวแปรให้เป็นชนิดตัวเลข (Integer) ด้วยคำสั่ง to_i เพื่อรองรับการบวกตัวเลขเพิ่ม สามารถแก้ไขโค้ดได้ดังนี้
i = '10'
i = i.to_i + 10
puts "ตัวแปร i มีค่าเท่ากับ #{i}"
ผลลัพธ์
ตัวแปร i มีค่าเท่ากับ 20