CodeGym/Java Blog/무작위의/Java의 NumberFormatException
John Squirrels
레벨 41
San Francisco

Java의 NumberFormatException

무작위의 그룹에 게시되었습니다
회원

Java의 NumberFormatException은 무엇입니까?

"NumberFormatException은 숫자가 아닌 문자열을 숫자로 변환할 때 발생합니다."
간단히 말해서 문자열이 숫자 데이터만 보유하지 않고 이를 숫자로 변환하려고 하면 이 예외가 발생합니다. 이것은 다른 의미로도 해석될 수 있습니다. 문자열 을 숫자로 변환할 수 없는 경우 예외가 표시기로 사용됩니다 . 숫자는 요구 사항에 따라 정수, 실수 또는 소수가 될 수 있습니다. 예를 들어 입력 문자열에 모든 문자, 영숫자 문자 또는 특수 문자가 포함되어 있고 문자열에서 정수로 변환을 시도 하면 NumberFormatException이 발생합니다.

이를 이해하기 위해 간단한 예를 살펴보겠습니다.
import java.util.Date;

public class NumberFormatExceptionTestDriver {

	public static void main(String[] args) {

		try {
			// a valid Integer number in the input String
			String inputString = "2550";
			System.out.println("Integer.pareseInt(" + inputString + ") = " + Integer.parseInt(inputString));
		} catch (NumberFormatException e) {
			// java.lang.NumberFormatException will be thrown if the
			// input string can not be converted to a valid integer
			System.out.println("\nNumberFormatException thrown! " + e.getMessage());
		}

		try {
			// a floating number in the input String
			// use Float.parseFloat(inputString) to avoid this exception
			String inputString = "255.0";
			System.out.println("Integer.pareseInt(" + inputString + ") = " + Integer.parseInt(inputString));
		} catch (NumberFormatException e) {
			System.out.println("\nNumberFormatException thrown! " + e.getMessage());
		}

		try {
			Date day = new Date();
			// date containing alpha-numeric data in the input string
			String inputString = day.toString();
			System.out.println("Integer.pareseInt(" + inputString + ") = " + Integer.parseInt(inputString));
		} catch (NumberFormatException e) {
			System.out.println("\nNumberFormatException thrown! " + e.getMessage());
		}

		try {
			// numbers with spaces in the input string
			String inputString = "1 2 3";
			System.out.println("Integer.pareseInt(" + inputString + ") = " + Integer.parseInt(inputString));
		} catch (NumberFormatException e) {
			System.out.println("\nNumberFormatException thrown! " + e.getMessage());
		}

		try {
			// all letters in the input string
			String inputString = "Lubaina Khan";
			System.out.println("Integer.pareseInt(" + inputString + ") = " + Integer.parseInt(inputString));

		} catch (NumberFormatException e) {
			System.out.println("\nNumberFormatException thrown! " + e.getMessage());
		}
	}
}

산출

Integer.pareseInt(2550) = 2550 NumberFormatException 발생! 입력 문자열: "255.0" NumberFormatException 발생! 입력 문자열의 경우: "Wed Aug 11 08:18:21 PKT 2021" NumberFormatException이 발생했습니다! 입력 문자열: "1 2 3" NumberFormatException 발생! 입력 문자열: "Lubaina Khan"

결론

Java에서 NumberFormatException이 발생하는 이유를 이해하시기 바랍니다. 근본 원인을 이해했다면 언제든지 원인을 파악하고 수정할 수 있습니다. 이 개념에 대해 여전히 명확하지 않은 경우 더 많은 실수를 하면 이 문제의 이유와 방법을 배우게 됩니다. 그때까지 계속 성장하고 계속 배우십시오.
코멘트
  • 인기
  • 신규
  • 이전
코멘트를 남기려면 로그인 해야 합니다
이 페이지에는 아직 코멘트가 없습니다