Java에서 String을 Int로 변환하는 방법은 무엇입니까? 문자열에 숫자만 포함된 경우 문자열을 Int로 변환하는 가장 좋은 방법은 Integer.parseInt()
를 사용하는 것입니다. 또는 Integer.valueOf()
.
문자열에 숫자와 문자가 모두 포함되어 있으면 정규식을 사용하여 문자열에서 숫자를 추출한 다음 결과 문자열을 Int로 변환해야 합니다.
한 가지 유의할 점은 parseInt(String)
기본 int를 반환하는 반면 valueOf(String)
Integer() 객체를 반환합니다.
Java에서 문자열을 Int로 변환
Integer.parseInt() 사용
public class ConvertStringToInt {
public static void main(String[] args) {
String stringNumber = "1234";
int number = convertStringToInt(stringNumber);
System.out.println(number);
}
private static int convertStringToInt(String number) {
return Integer.parseInt(number);
}
}
출력:
1234
Integer.valueOf() 사용
public class ConvertStringToInt {
public static void main(String[] args) {
String stringNumber = "1234";
int number = convertStringToInt(stringNumber);
System.out.println(number);
}
private static int convertStringToInt(String number) {
return Integer.valueOf(number);
}
}
출력:
1234
String에 "1234abcd"와 같은 문자와 숫자가 포함되어 있으면 Integer 파서가 Javadoc에 명시된 대로 NumberFormatException을 발생시킨다는 점에 유의하는 것이 중요합니다.
관련:
- Java에서 toString()을 재정의하는 이유
- 자바에서 문자열을 뒤집는 방법
- 문자열에서 숫자를 추출하는 방법
- 자바에서 문자열을 비교하는 방법
Integer.decode() 사용
Integer.decode()
를 사용할 수도 있습니다. . decode
의 흥미로운 기능 base 10
과 같은 다른 기본으로 변환할 수 있다는 것입니다. , base 16
등...
public class ConvertStringToInt {
public static void main(String[] args) {
String stringNumber = "1234";
int number = convertStringToInt(stringNumber);
System.out.println(number);
}
private static int convertStringToInt(String number) {
return Integer.decode(number);
}
}
출력:
1234
Apache Commons NumberUtils 클래스
마지막으로 Apache Commons NumberUtils 클래스를 사용하여 Java에서 String을 Int로 변환할 수 있습니다.
pom.xml
에 다음 종속성을 갖기만 하면 됩니다. 파일
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.9</version>
</dependency>
그런 다음 다음을 사용할 수 있습니다.
import org.apache.commons.lang3.math.NumberUtils;
public class ConvertStringToInt {
public static void main(String[] args) {
String stringNumber = "1234";
int number = convertStringToInt(stringNumber);
System.out.println(number);
}
private static int convertStringToInt(String number) {
return NumberUtils.toInt(number);
}
}
출력:
1234