การแยกวิเคราะห์และ Valueof
แปลงข้อความเป็นตัวเลข
การแยกวิเคราะห์และ Valueof เป็นบทเรียน Java Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Java Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Java Academy มีบทเรียนทั้งหมด 4 บทเรียน
แปลงข้อความเป็นตัวเลข
ข้อมูลนำเข้าจากผู้ใช้และไฟล์มาถึงในรูปข้อความ String หากต้องการคำนวณ คุณต้องแปลงข้อความเหล่านั้นเป็นตัวเลข
คลาสห่อหุ้มมีเมธอดสำหรับงานนี้อยู่สองกลุ่ม: parseXxx ส่งคืนชนิดข้อมูลพื้นฐาน ส่วน valueOf ส่งคืนออบเจ็กต์คลาสห่อหุ้ม
parseInt ส่งคืนชนิดข้อมูลพื้นฐาน
Integer.parseInt รับข้อความและส่งคืน int ธรรมดา นี่คือเมธอดแปลงค่าที่ใช้กันทั่วไปที่สุด
public class Main {
public static void main(String[] args) {
int n = Integer.parseInt("123");
System.out.println(n + 1);
}
}valueOf ส่งคืนคลาสห่อหุ้ม
Integer.valueOf รับข้อความและส่งคืนออบเจ็กต์ Integer แทนชนิดข้อมูลพื้นฐาน เมธอดนี้มีประโยชน์เมื่อคุณต้องการคลาสห่อหุ้มโดยตรง เช่น เมื่อต้องการใส่ค่าลงในคอลเลกชัน
public class Main {
public static void main(String[] args) {
Integer boxed = Integer.valueOf("456");
System.out.println(boxed);
}
}การแปลงเลขทศนิยม
ใช้ Double.parseDouble กับข้อความเลขทศนิยมแบบจุดลอยตัว เมธอดนี้รองรับค่าที่มีจุดทศนิยมและแม้แต่รูปแบบสัญกรณ์วิทยาศาสตร์
public class Main {
public static void main(String[] args) {
double price = Double.parseDouble("19.99");
System.out.println(price * 2);
}
}การแปลงชนิดข้อมูลอื่น
คลาสห่อหุ้มตัวเลขทุกชนิดมีเมธอดแปลงค่า ได้แก่ Long.parseLong, Double.parseDouble, Float.parseFloat, Short.parseShort และ Byte.parseByte
public class Main {
public static void main(String[] args) {
long big = Long.parseLong("9000000000");
System.out.println(big);
}
}การแปลงค่าบูลีน
Boolean.parseBoolean จะคืนค่าเป็นจริงก็ต่อเมื่อข้อความเท่ากับ "true" โดยไม่คำนึงถึงตัวพิมพ์เล็กใหญ่ สตริงอื่นทั้งหมด รวมถึงค่าว่าง จะคืนค่าเป็นเท็จ
public class Main {
public static void main(String[] args) {
System.out.println(Boolean.parseBoolean("true"));
System.out.println(Boolean.parseBoolean("TRUE"));
System.out.println(Boolean.parseBoolean("yes"));
}
}การแปลงค่าในฐานตัวเลขต่าง ๆ
Integer.parseInt ยอมรับอาร์กิวเมนต์ฐานตัวเลขที่ระบุได้ จะอ่านเลขฐานสองเมื่อส่งค่า 2 และอ่านเลขฐานสิบหกเมื่อส่งค่า 16
public class Main {
public static void main(String[] args) {
int binary = Integer.parseInt("1010", 2);
int hex = Integer.parseInt("ff", 16);
System.out.println(binary);
System.out.println(hex);
}
}ข้อมูลนำเข้าที่ไม่ถูกต้องทำให้เกิดข้อยกเว้น
หากข้อความไม่ใช่ตัวเลขที่ถูกต้อง การแปลงค่าจะทำให้เกิด NumberFormatException คุณควรครอบการแปลงค่าที่อาจผิดพลาดไว้ในบล็อกสำหรับทดลองทำงานและดักจับข้อยกเว้น
public class Main {
public static void main(String[] args) {
try {
int n = Integer.parseInt("hello");
System.out.println(n);
} catch (NumberFormatException e) {
System.out.println("Not a number!");
}
}
}ระวังช่องว่าง
การแปลงค่าไม่ยอมรับช่องว่างรอบข้อความ Integer.parseInt(" 5 ") จะทำให้เกิดข้อยกเว้น
ให้เรียกใช้ trim() หรือ strip() กับข้อมูลนำเข้าจากผู้ใช้ก่อนเสมอ
public class Main {
public static void main(String[] args) {
String raw = " 42 ";
int n = Integer.parseInt(raw.trim());
System.out.println(n);
}
}แปลงตัวเลขกลับเป็นข้อความ
หากต้องการแปลงกลับในทิศทางตรงกันข้าม ให้ใช้ String.valueOf หรือ Integer.toString ทั้งสองเมธอดจะเปลี่ยนตัวเลขเป็นรูปแบบข้อความ
public class Main {
public static void main(String[] args) {
String text = Integer.toString(789);
String text2 = String.valueOf(3.14);
System.out.println(text.length());
System.out.println(text2);
}
}parseXxx เทียบกับ valueOf
จดจำกฎนี้ไว้: parseInt ให้ชนิดข้อมูลพื้นฐาน int ส่วน valueOf ให้ออบเจ็กต์ Integer ให้เลือกตามว่าคุณต้องการชนิดข้อมูลพื้นฐานหรือคลาสห่อหุ้ม
ตรวจสอบความเข้าใจสั้น ๆ
ทดสอบสิ่งที่คุณได้เรียนรู้เกี่ยวกับการแปลงค่า
ทบทวน
คุณได้เรียนรู้วิธีแปลงระหว่างข้อความกับตัวเลข
parseInt,parseDoubleและเมธอดอื่น ๆ ส่งคืนชนิดข้อมูลพื้นฐานvalueOfส่งคืนออบเจ็กต์คลาสห่อหุ้ม- ข้อมูลนำเข้าที่ไม่ถูกต้องทำให้เกิด
NumberFormatExceptionดังนั้นให้ใช้ trim และดักจับข้อยกเว้น parseIntสามารถอ่านฐานตัวเลขอื่นได้ด้วยอาร์กิวเมนต์ฐานตัวเลข- ใช้
toStringหรือString.valueOfเพื่อแปลงกลับเป็นข้อความ
คำถามที่พบบ่อย
บทเรียน “การแยกวิเคราะห์และ Valueof” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “การแยกวิเคราะห์และ Valueof” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Java Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Java Academy มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “การแยกวิเคราะห์และ Valueof”
แปลงข้อความเป็นตัวเลข คุณปฏิบัติ Java Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Java Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน Java Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน
บทเรียน “การแยกวิเคราะห์และ Valueof” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน Java Academy นี้ได้ไหม
ได้ บทเรียน Java Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- ชนิดข้อมูลพื้นฐานเทียบกับชนิดห่อหุ้ม
- Autoboxing และ Unboxing
- การแยกวิเคราะห์และ Valueof
- ข้อควรระวังของ Autoboxing