0Pricing
Java Academy · บทเรียน

การแยกวิเคราะห์และ 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 ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. ชนิดข้อมูลพื้นฐานเทียบกับชนิดห่อหุ้ม
  2. Autoboxing และ Unboxing
  3. การแยกวิเคราะห์และ Valueof
  4. ข้อควรระวังของ Autoboxing
← กลับไปที่ Java Academy