본문 바로가기
컴퓨터/Java

[java] 문자열에서 정수형, double형으로 바꾸는 방법, 문자열에서 기본형으로 바꾸는 방법 - String to int, double

by HanJoohyun 2017. 12. 30.
반응형




안녕하세요 한주현입니다.


오늘은 java에서 문자열에서 정수형, double형으로 변환하는 방법에 대해 알아보겠습니다.


그리고 문자열에서 기본형으로 바꾸는 방법에 대해 알아보겠습니다.



 1. 문자열에서 정수형으로 바꾸는 방법 - Integer 클래스 parseInt 메서드 사용


문자열에서 정수형으로 바꾸는 방법 - Integer 클래스 parseInt 메서드 사용


문자열에서 정수형 객체로 바꾸는 방법은 Integer 클래스의 parseInt 메서드를 사용하는 방법입니다.


<소스코드>


1
2
3
4
5
6
7
class StringToInt {
    public static void main(String[] args) {
        String s1 = "100";
        int i1 = Integer.parseInt(s1);
        System.out.println(i1);
    }
}
cs



<결과>


1
100
cs




 2. 문자열에서 double형으로 바꾸는 방법 - Double 클래스 parseDouble 메서드 사용


문자열에서 double형으로 바꾸는 방법 - Double 클래스 parseDouble 메서드 사용


문자열에서 double형 객체로 바꾸는 방법은 Double 클래스의 parseDouble 메서드를 사용하는 방법입니다.


<소스코드>


1
2
3
4
5
6
7
class StringToDouble {
    public static void main(String[] args) {
        String s1 = "100";
        double d1 = Double.parseDouble(s1);
        System.out.println(d1);
    }
}
cs


<결과>


1
100.0
cs




 3. 문자열에서 java 기본형으로 바꾸는 방법


문자열 → boolean


1
2
3
4
5
6
7
class Convert {
    public static void main(String[] args) {
        String s1 = "True";
        boolean bool1 = Boolean.parseBoolean(s1);
        System.out.println(bool1);
    }
}
cs

1
true
cs



문자열 → byte


1
2
3
4
5
6
7
class Convert {
    public static void main(String[] args) {
        String s1 = "100";
        byte byte1 = Byte.parseByte(s1);
        System.out.println(byte1);
    }
}
cs

1
100
cs

byte는 -128 ~ 127 까지 범위를 가지고 있으며 만약 String 의 값이 범위를 벗어난다면 아래와 같이

java.lang.NumberFormatException

오류가 발생합니다.

1
Exception in thread "main" java.lang.NumberFormatException: Value out of range. Value:"10
cs


문자열 → short


1
2
3
4
5
6
7
class Convert {
    public static void main(String[] args) {
        String s1 = "100";
        short short1 = Short.parseShort(s1);
        System.out.println(short1);
    }
}
cs


1
100
cs

short는 -32768 ~ 32767 까지 범위를 가지고 있으며 만약 String 의 값이 범위를 벗어난다면 아래와 같이

java.lang.NumberFormatException

오류가 발생합니다.

1
Exception in thread "main" java.lang.NumberFormatException: Value out of range. Value:"100000" Radix:10
cs


문자열 → int


1
2
3
4
5
6
7
class Convert {
    public static void main(String[] args) {
        String s1 = "100";
        int int1 = Integer.parseInt(s1);
        System.out.println(int1);
    }
}
cs


1
100
cs

int는 -2147483648 ~ 2147483647 까지 범위를 가지고 있으며 만약 String 의 값이 범위를 벗어난다면 아래와 같이

java.lang.NumberFormatException

오류가 발생합니다.

1
Exception in thread "main" java.lang.NumberFormatException: Value out of range. Value:"100000000000" Radix:10
cs



문자열 → long


1
2
3
4
5
6
7
class Convert {
    public static void main(String[] args) {
        String s1 = "100";
        long long1 = Long.parseLong(s1);
        System.out.println(long1);
    }
}
cs


1
100
cs

int는 -9223372036854775808 ~ 9223372036854775807 까지 범위를 가지고 있으며 만약 String 의 값이 범위를 벗어난다면 아래와 같이

java.lang.NumberFormatException

오류가 발생합니다.

1
Exception in thread "main" java.lang.NumberFormatException: Value out of range. Value:"9223372036854775808" Radix:10
cs


문자열 → float


1
2
3
4
5
6
7
class Convert {
    public static void main(String[] args) {
        String s1 = "100";
        float float1 = Float.parseFloat(s1);
        System.out.println(float1);
    }
}
cs


1
100.0
cs

float는 1.4E-45 ~ 3.4028235E38 까지 양수 범위를 가지고 있으며 만약 String 의 값이 범위를 벗어난다면 아래와 같이

Infinity로 표기 됩니다.

1
Infinity
cs


문자열 → double

1
2
3
4
5
6
7
class Convert {
    public static void main(String[] args) {
        String s1 = "100";
        double double1 = Double.parseDouble(s1);
        System.out.println(double1);
    }
}
cs


1
100.0
cs

double은 4.9E-324~1.7976931348623157E308 까지 양수 범위를 가지고 있으며 만약 String 의 값이 범위를 벗어난다면 아래와 같이

Infinity로 표기 됩니다.

1
Infinity
cs






오늘은 java에서 String 에서 int, double로 바꾸는 방법과


각 문자열을 java 기본형으로 변환하는 방법 대하여 알아봤습니다.


모두들 열공하시고 ㅎㅎ


그럼 다음시간에 만나요~



반응형

댓글