CodeGym /Java Blog /Acak /NumberFormatException di Jawa
John Squirrels
Level 41
San Francisco

NumberFormatException di Jawa

Dipublikasikan di grup Acak

Apa itu NumberFormatException di Jawa?

“NumberFormatException dilemparkan pada konversi String non-numerik menjadi angka.”
Sederhananya, jika sebuah String tidak hanya menyimpan data numerik dan Anda mencoba mengubahnya menjadi angka, Anda akan menemukan pengecualian ini. Ini juga bisa diartikan dengan cara lain. Pengecualian digunakan sebagai indikator jika konversi String ke angka tidak memungkinkan. Angka tersebut dapat berupa bilangan bulat, float, atau desimal sesuai kebutuhan Anda. Misalnya, jika string input berisi semua huruf, karakter alfanumerik, atau karakter khusus dan Anda mencoba mengonversi dari String ke Integer , maka NumberFormatException akan dilempar.

Contoh

Mari kita lihat contoh sederhana untuk memahami ini.

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

Keluaran

Integer.pareseInt(2550) = 2550 NumberFormatException dilemparkan! Untuk input string: "255.0" NumberFormatException dilemparkan! Untuk string input: "Rab 11 Agustus 08:18:21 PKT 2021" NumberFormatException dilemparkan! Untuk input string: "1 2 3" NumberFormatException dilemparkan! Untuk string input: "Lubaina Khan"

Kesimpulan

Kami harap Anda mengerti mengapa NumberFormatException muncul di Jawa. Jika Anda telah memahami akar penyebabnya, Anda selalu dapat mengidentifikasi alasannya dan memperbaikinya. Jika Anda masih belum jelas tentang konsep ini, buatlah lebih banyak kesalahan dan Anda akan mempelajari mengapa dan bagaimana masalah ini. Sampai saat itu terus tumbuh dan terus belajar.
Komentar
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION