CodeGym /Java Blog /Random /NumberFormatException sa Java
John Squirrels
Antas
San Francisco

NumberFormatException sa Java

Nai-publish sa grupo

Ano ang NumberFormatException sa Java?

"Ang NumberFormatException ay itinapon sa conversion ng isang non-numeric na String sa isang numero."
Sa madaling salita, kung ang isang String ay hindi lamang numeric na data at susubukan mong i-convert ito sa isang numero, makakatagpo ka ng pagbubukod na ito. Maaari din itong bigyang kahulugan sa ibang paraan. Ginagamit ang exception bilang indicator kung hindi posible ang conversion ng String sa isang numero. Ang numero ay maaaring isang integer, float o decimal ayon sa iyong mga kinakailangan. Halimbawa, kung ang input string ay naglalaman ng lahat ng mga titik, alpha-numeric na character o mga espesyal na character at sinubukan mong subukan ang isang conversion mula sa String patungo sa Integer pagkatapos ay isang NumberFormatException ang itatapon.

Halimbawa

Tingnan natin ang isang simpleng halimbawa upang maunawaan ito.

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());
		}
	}
}

Output

Integer.pareseInt(2550) = 2550 NumberFormatException itinapon! Para sa input string: "255.0" NumberFormatException itinapon! Para sa input string: "Wed Aug 11 08:18:21 PKT 2021" NumberFormatException thrown! Para sa input string: "1 2 3" NumberFormatException thrown! Para sa input string: "Lubaina Khan"

Konklusyon

Umaasa kaming naiintindihan mo kung bakit lumitaw ang NumberFormatException sa Java. Kung naunawaan mo ang ugat, maaari mong palaging tukuyin ang dahilan at itama ito. Kung hindi ka pa rin malinaw sa konseptong ito, gumawa ng higit pang mga pagkakamali at matututuhan mo ang mga bakit at paano ng problemang ito. Hanggang pagkatapos ay patuloy na lumago at patuloy na matuto.
Mga komento
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION