แก้ไขแล้ว: แปลงสตริงเป็นจาวาลอย

แปลงสตริงเป็นลอย การแปลงสตริงเป็นทศนิยมเป็นงานทั่วไปในการเขียนโปรแกรม Java โดยเฉพาะอย่างยิ่งเมื่อต้องจัดการกับอินพุตของผู้ใช้หรือข้อมูลจากแหล่งภายนอกที่ต้องประมวลผลและแปลงเป็นค่าตัวเลขสำหรับการคำนวณและการเปรียบเทียบ ในบทความนี้ เราจะสำรวจวิธีการและแนวทางต่างๆ ในการแปลงสตริงเป็นโฟลต หารือเกี่ยวกับข้อดีและข้อผิดพลาดที่อาจเกิดขึ้น และให้คำอธิบายทีละขั้นตอนของโค้ดที่เกี่ยวข้องกับกระบวนการ นอกจากนี้ เราจะเจาะลึกเข้าไปในไลบรารี Java และฟังก์ชันที่เกี่ยวข้องกับปัญหานี้ โดยแสดงความเกี่ยวข้องและการนำไปใช้กับสถานการณ์การเขียนโปรแกรมในโลกแห่งความเป็นจริง

วิธีการ Float.parseFloat() ของ Java

วิธีที่ง่ายที่สุดและใช้กันอย่างแพร่หลายในการแปลงสตริงเป็นทศนิยมใน Java คือการใช้ ลอย. วิธี. วิธีการแบบคงที่นี้เป็นส่วนหนึ่งของ ลอย คลาส wrapper และรับอาร์กิวเมนต์เดียวที่มีการแสดงสตริงของตัวเลขทศนิยม เมธอดจะคืนค่าดั้งเดิม ลอย ค่าที่แสดงถึงค่าตัวเลขของสตริงอินพุต

String str = "3.14";
float floatNum = Float.parseFloat(str);
System.out.println("Converted float: " + floatNum);

ในตัวอย่างด้านบน ขั้นแรก เราสร้างสตริง Str ที่แสดงถึงเลขทศนิยม “3.14” ต่อไปเราเรียกว่า ลอย. วิธีการที่มีสตริงนี้เป็นอาร์กิวเมนต์ เมธอดนี้ประมวลผลสตริงอินพุตและส่งกลับค่าทศนิยมดั้งเดิมซึ่งเราเก็บไว้ในตัวแปร หมายเลขลอย. สุดท้าย เราพิมพ์ทุ่นผลลัพธ์ไปยังคอนโซล

การจัดการ NumberFormatException

สิ่งสำคัญคือต้องพิจารณาถึงความเป็นไปได้ที่จะพบ NumberFormatException เมื่อแปลงสตริงเป็นทศนิยมโดยใช้ไฟล์ ลอย. วิธี. หากสตริงอินพุตประกอบด้วยอักขระที่ไม่ใช่ตัวเลขหรือมีรูปแบบไม่ถูกต้อง เมธอดจะข้ามข้อยกเว้นนี้ไป ทำให้โปรแกรมหยุดทำงานหากไม่ได้รับการจัดการอย่างเหมาะสม

เพื่อหลีกเลี่ยงปัญหาดังกล่าว ขอแนะนำให้ใช้บล็อก try-catch เพื่อจัดการกับข้อยกเว้นที่อาจเกิดขึ้น:

String str = "3.14a";
float floatNum = 0;
try {
    floatNum = Float.parseFloat(str);
} catch (NumberFormatException e) {
    System.out.println("Invalid format: " + e.getMessage());
}
System.out.println("Converted float: " + floatNum);

ในตัวอย่างนี้ เรามีสตริงอินพุต Str ด้วยรูปแบบที่ไม่ถูกต้องเนื่องจากการรวมอักขระที่ไม่ใช่ตัวเลข เมื่อโทร ลอย. วิธีการภายในบล็อกลองเราสามารถจัดการได้อย่างปลอดภัย NumberFormatException โดยไม่ทำให้โปรแกรมพัง บล็อก catch จะทำงานหากมีข้อยกเว้นเกิดขึ้น แจ้งเตือนผู้ใช้ถึงอินพุตที่ไม่ถูกต้องและอนุญาตให้โปรแกรมดำเนินการต่อ

DecimalFormat Class และ Parse() วิธีการของ Java

อีกวิธีในการแปลงสตริงเป็นทศนิยมใน Java เกี่ยวข้องกับการใช้ รูปแบบทศนิยม คลาสซึ่งเป็นของ java.ข้อความ บรรจุุภัณฑ์. คลาสนี้ช่วยให้สามารถควบคุมการจัดรูปแบบและการแยกวิเคราะห์ตัวเลขทศนิยมได้แม่นยำยิ่งขึ้น รวมถึงรองรับรูปแบบตัวเลขเฉพาะโลแคล

รางวัล รูปแบบทศนิยม คลาสให้ก แยกวิเคราะห์ () วิธีการที่ใช้สตริงเป็นอาร์กิวเมนต์และส่งกลับ จำนวน วัตถุ. วัตถุนี้สามารถแปลงเป็นค่าทศนิยมดั้งเดิมได้:

import java.text.DecimalFormat;
import java.text.ParseException;

String str = "3,14";
DecimalFormat decimalFormat = new DecimalFormat();
Number number;
float floatNum = 0;
try {
    number = decimalFormat.parse(str);
    floatNum = number.floatValue();
} catch (ParseException e) {
    System.out.println("Invalid format: " + e.getMessage());
}
System.out.println("Converted float: " + floatNum);

ในตัวอย่างนี้ ก่อนอื่นเรานำเข้าคลาสที่จำเป็นจาก java.ข้อความ บรรจุุภัณฑ์. จากนั้นเราก็สร้าง รูปแบบทศนิยม วัตถุ ซึ่งจะช่วยให้เราสามารถแยกวิเคราะห์สตริงอินพุต Strซึ่งมีตัวคั่นทศนิยมเฉพาะโลแคล เดอะ แยกวิเคราะห์ () เมธอดถูกเรียกภายในบล็อกลอง โดยเก็บผลลัพธ์ไว้ใน a จำนวน วัตถุ. สุดท้าย เราจะแปลงตัวเลขนี้เป็นเลขทศนิยมดั้งเดิมโดยใช้ ค่าลอยตัว() วิธีการและพิมพ์ผลลัพธ์ไปยังคอนโซล

โดยสรุป การแปลงสตริงเป็นทศนิยมเป็นงานพื้นฐานในการเขียนโปรแกรม Java และจำเป็นอย่างยิ่งที่จะต้องเข้าใจเมธอด ไลบรารี และฟังก์ชันต่างๆ ที่เกี่ยวข้องกับกระบวนการแปลงนี้ โดยการสำรวจ ลอย. วิธีการ, การจัดการ NumberFormatExceptionและใช้ประโยชน์จากพลังของ รูปแบบทศนิยม คลาสนักพัฒนาสามารถแปลงสตริงเป็นค่าตัวเลขได้อย่างน่าเชื่อถือและสร้างแอปพลิเคชัน Java ที่แข็งแกร่งและหลากหลาย

กระทู้ที่เกี่ยวข้อง:

แสดงความคิดเห็น