필요한 지식의 대략적인 수준: Java 구문 탐구 및 약간의 Java Core.
첫 번째 JavaRush 퀘스트가 끝나면 유형 변환에 대해 배웁니다. int
레벨 10 강의에서는 변환 이 매우 간단하다는 것을 알 수 있었고 , 일반적으로 거의 모든 기본 유형을 문제 없이 String
변환할 수 있습니다 .String
int x = 5;
String text = "X=" + x;
또한 이미 Java 구문 퀘스트 레벨 10을 완료한 사람들은 숫자에 대한 참조를 문자열에 대한 참조로 변환하는 것이 불가능하다는 것을 알고 있습니다. 그렇다면 문자열을 원시 정수로 변환하는 가장 좋은 방법은 무엇입니까? parseInt
클래스 메소드를 사용하여 이를 수행하는 것이 더 좋습니다 Integer
. 메서드는 문자열을 type 으로 parseInt
변환해야 하며 , 문자열을 type 으로 변환할 수 없는 경우 예외를 발생시킵니다 . String
int
NumberFormatException
int
예
문자열을 정수로 변환하는 기본 줄:
int i = Integer.parseInt (myString);
변수가 나타내는 문자열이 myString
"1", "200"과 같은 유효한 정수인 경우 Java는 이를 기본 데이터 유형으로 조용히 변환합니다 int
. 어떤 이유로 이것이 실패하면 해당 작업에서 예외가 발생할 수 있으므로 NumberFormatException
프로그램이 모든 문자열에 대해 올바르게 작동하려면 조금 더 많은 코드가 필요합니다. Java String
로 변환하고 int
가능한 제어 방법을 보여주는 프로그램 NumberFormatException
:
public class JavaStringToIntExample
{
public static void main (String[] args)
{
String s = "100";
try
{
int i = Integer.parseInt(s.trim());
System.out.println("int i = " + i);
}
catch (NumberFormatException nfe)
{
System.out.println("NumberFormatException: " + nfe.getMessage());
}
}
논의
위의 예를 연구하면 메서드가 Integer.parseInt (s.trim ())
문자열을 s
정수로 변환하는 데 사용되며 i
이는 다음 코드 줄에서 발생한다는 것을 알 수 있습니다.
int i = Integer.parseInt (s.trim ())
그러나 때로는 문자열을 숫자로 변환하는 것이 작동하지 않는 경우도 있습니다. 이 예에서 이러한 문자열은 fred라는 이름입니다. 컴퓨터에 문자를 쓰는 코드에 대해 이야기할 수 있지만, 공식적으로 fred는 숫자가 아니므로 문자열로 두는 것이 좋습니다. 우리 프로그램은 "fred"를 숫자로 변환하려고 하면 프로세스에서 Integer parseInt
예외가 발생하고 NumberFormatException
이를 블록에서 처리하도록 설계되었습니다 try / catch
. trim ()
이 경우 클래스 메소드를 사용할 필요는 없지만 String
실제 프로그래밍에서는 이를 사용해야 합니다. 그래서 우리는 그것을 당신에게 보여주었습니다. 이 주제가 나왔으므로 다음은 수업 주제에 대한 몇 가지 "힌트" 입니다 String
.Integer
Integer.toString (int i)
int
Java 문자열로 변환하는 데 사용됩니다 .
String
객체를 객체 ( 기본 Integer
클래스가 아닌 ) int
로 변환하려면 .valueOf ()
Integer
parseInt ()
- 문자열을 추가적인 기본 Java 필드로 변환해야 하는 경우 이와 같은 메소드를 사용하십시오
Long.parseLong ()
.
답변자: 앨리스 왓슨
GO TO FULL VERSION