MENU

Java 숫자 ⇔ 문자열 ⇔ 날짜 변환

목차

숫자 ⇒ 문자열 변환

숫자에서 문자열로의 변환은String.valueof() 사용합니다.

String str = String.valueOf(num);

또, 그 밖에도 이러한 쓰는 방법이 있습니다.

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

마지막 “” + num (은)는, 캐릭터 라인과 연결시키면 수치를 캐릭터 라인으로서 취급한다고 하는 Java 의 특징을 활용하고 있습니다.

마지막 방법이 가장 간단하게 기술할 수 있습니다만, Java 의 특성을 제대로 이해하고 있지 않는 분이 보면, 의도를 읽어내는데 시간이 걸립니다.

문자열 ⇒ 숫자 변환

문자열에서 숫자로의 변환은Integer.parseInt() 사용합니다.

int num = Integer.parseInt(str);

문자가 들어가 있거나, 형태에 들어가지 않는 수치이거나와, 어떠한 이유로 변환할 수 없었던 경우는 NumberFormatException 가 되기 때문에 주의가 필요합니다.

날짜 ⇒ 문자열 변환

날짜에서 문자열로의 변환은 숫자 ⇒ 문자열보다 약간 복잡합니다.

우선 SimpleDateFormat 의 인스턴스를 만듭니다. 만들 때 날짜 형식을 지정합니다. 이것이 캐릭터 라인으로 했을 때의 포맷이 됩니다.

마지막으로 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.parse 메서드를 사용합니다.

날짜 ⇒ 문자열의 경우와 마찬가지로 SimpleDateFormat을 만듭니다. 만들 때 날짜 형식을 지정하지만 변환할 문자열의 날짜 형식과 일치합니다.

마지막으로 SimpleDateFormat.parse() 로 날짜(Date)로 변환합니다.

샘플 코드

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 문으로 둘러싸는, 또는 재차 throw 하고 다시 할 필요가 있습니다.

숫자 ⇔ 날짜 변환

수치로부터 일자, 또는 일자로부터 수치에의 변환은, 유감스럽게도, 그것을 위해서 만들어진 메소드는 없습니다. 둘 다 한 번 문자열로 변환을 거쳐야합니다.

  • URL을(를) 확인했습니다!
목차