เมนู

การแปลงตัวเลขเป็นสตริงและวันที่ในภาษา Java

สารบัญ

การแปลงตัวเลขเป็นสตริง

การแปลงจากตัวเลขเป็นสตริงคือสตริง.ค่าของ() เราจะใช้สิ่งนี้

สตริง str = สตริง.valueOf(num);

นอกจากนี้ยังมีวิธีเขียนแบบนี้ได้อีกหลายวิธี

String str = Integer.toString(num);
String str = "" + num;

เครื่องหมาย " + num ในตอนท้ายใช้ประโยชน์จากคุณสมบัติของ Java ที่ว่า เมื่อนำไปต่อกับสตริง ตัวเลขจะถูกมองว่าเป็นสตริง

วิธีสุดท้ายนั้นเขียนง่ายที่สุด แต่คนที่ยังไม่คุ้นเคยกับลักษณะเฉพาะของภาษา Java อาจต้องใช้เวลาในการทำความเข้าใจเจตนาของวิธีนี้

การแปลงข้อความเป็นตัวเลข

การแปลงจากสตริงเป็นตัวเลขInteger.parseInt() เราจะใช้สิ่งนี้

int num = Integer.parseInt(str);

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

การแปลงวันที่เป็นสตริง

การแปลงวันที่เป็นสตริงนั้นซับซ้อนกว่าการแปลงตัวเลขเป็นสตริงเล็กน้อย

อันดับแรก รูปแบบวันที่แบบง่าย มีการสร้างอินสแตนซ์ของ [วัตถุ] โดยระบุรูปแบบวันที่ในระหว่างการสร้าง ซึ่งจะกำหนดรูปแบบเมื่อแปลงเป็นสตริง

สุดท้ายนี้ SimpleDateFormat.format() กำลังแปลงเป็นสตริง

ตัวอย่างโค้ด

public static void main(String[] args) {
    Date date = new Date();
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd hh:mm:ss");
    String str = sdf.format(date);
    
    System.out.println("日付型 = " + date);
    System.out.println("文字列 = " + str);
}

ผลลัพธ์ที่ได้:

日付型 = Sat Nov 02 12:11:55 UTC 2019
文字列 = 2019/11/02 12:11:55

การแปลงสตริงเป็นวันที่

ในการแปลงจากสตริงเป็นวันที่การแยกวิเคราะห์รูปแบบวันที่อย่างง่าย เราจะใช้วิธีนี้

เช่นเดียวกับการแปลงวันที่เป็นสตริง ให้สร้างอ็อบเจ็กต์ SimpleDateFormat เมื่อสร้างอ็อบเจ็กต์นี้ ให้ระบุรูปแบบวันที่ ซึ่งควรตรงกับรูปแบบวันที่ของสตริงที่คุณต้องการแปลง

สุดท้ายนี้ SimpleDateFormat.parse() นี่เป็นการแปลงให้เป็นวันที่

ตัวอย่างโค้ด

public static void main(String[] args) {
    try {
        String strDate = "2019/11/01 12:34:56";
     
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd hh:mm:ss");
        Date date = sdf.parse(strDate);
        
        System.out.println("文字列 = " + strDate);
        System.out.println("日付型 = " + date);
        
    } catch (ParseException e) {
        //例外処理
    }
}

ผลลัพธ์ที่ได้:

文字列 = 2019/11/01 12:34:56
日付型 = Fri Nov 01 00:34:56 UTC 2019

โปรดทราบว่าเมธอด parse จะโยนข้อยกเว้น ParseException ดังนั้นคุณต้องครอบมันด้วยคำสั่ง try-catch หรือโยนข้อยกเว้นนั้นอีกครั้ง

การแปลงตัวเลขเป็นวันที่

น่าเสียดายที่ไม่มีวิธีการใดที่ออกแบบมาโดยเฉพาะสำหรับการแปลงระหว่างตัวเลขและวันที่ ทั้งสองอย่างต้องแปลงเป็นสตริงก่อน

  • URL をkoピーしました!
สารบัญ