Devdit
 

วิธีแก้ไข no implicit conversion of Integer into String Ruby

858

เขียนภาษา 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
เขียน 2 ปีที่แล้ว
ชอบ
ลิ้งก์
แชร์
Devdit มีช่อง YouTube แล้ว
เราสร้างวิดีโอเกี่ยวกับเทคโนโลยี ทำตามง่ายๆ