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์ด ๋ฐœ์ƒํ•˜๋Š” ์ด์œ ๋ฅผ ์ดํ•ดํ•˜์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค. ๊ทผ๋ณธ ์›์ธ์„ ์ดํ•ดํ–ˆ๋‹ค๋ฉด ์–ธ์ œ๋“ ์ง€ ์›์ธ์„ ํŒŒ์•…ํ•˜๊ณ  ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๊ฐœ๋…์— ๋Œ€ํ•ด ์—ฌ์ „ํžˆ ๋ช…ํ™•ํ•˜์ง€ ์•Š์€ ๊ฒฝ์šฐ ๋” ๋งŽ์€ ์‹ค์ˆ˜๋ฅผ ํ•˜๋ฉด ์ด ๋ฌธ์ œ์˜ ์ด์œ ์™€ ๋ฐฉ๋ฒ•์„ ๋ฐฐ์šฐ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ๊ทธ๋•Œ๊นŒ์ง€ ๊ณ„์† ์„ฑ์žฅํ•˜๊ณ  ๊ณ„์† ๋ฐฐ์šฐ์‹ญ์‹œ์˜ค.
์ฝ”๋ฉ˜ํŠธ
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION