Ausnahme bei ungültiger Eingabe in Java
- Wenn das Eingabeargument in Java ungültig ist
- Wenn die Eingabe in Java Null ist
- Benutzerdefinierte Ausnahme für ungültige Eingaben in Java
Java bietet keine Ausnahme mit dem Namen Invalid Input
, aber einige IO-Ausnahmen und Laufzeitausnahmen können verwendet werden, um ungültige Eingaben zu behandeln; Wir können je nach Situation eine von IO-Ausnahmen erhalten oder eine benutzerdefinierte Ausnahme für ungültige Eingaben erstellen.
Dieses Tutorial zeigt, wie Sie Ausnahmen für ungültige Eingaben in Java verwenden.
Wenn das Eingabeargument in Java ungültig ist
Wenn wir mit Methoden arbeiten, setzen wir manchmal ungültige Eingabeargumente, dann wird die IllegalArgumentException
abgefangen. Das folgende Beispiel demonstriert die IllegalArgumentException
in Java.
package delftstack;
public class Invalid_Argument {
public static void main(String[] args) {
Thread Demo_Thread = new Thread(new Runnable() {
public void run() {
try {
Thread.sleep(-100);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("Hello! This is delftstack.com");
}
});
Demo_Thread.setName("Delftstack Thread");
Demo_Thread.start();
}
}
Der obige Code löst IllegalArgumentException
aus, weil die Eingabe in Thread.sleep()
ungültig ist. Siehe Ausgabe:
Exception in thread "Delftstack Thread" java.lang.IllegalArgumentException: timeout value is negative
at java.base/java.lang.Thread.sleep(Native Method)
at delftstack.Invalid_Argument$1.run(Invalid_Argument.java:10)
at java.base/java.lang.Thread.run(Thread.java:833)
Wenn die Eingabe in Java Null ist
Wenn einem Objekt ein Nullwert zugewiesen wird oder wir versuchen, eine Nulleingabe zu manipulieren, wird die NullPointerException
ausgelöst. Es kann auch als Ausnahme bei ungültiger Eingabe verwendet werden.
Siehe Beispiel:
package delftstack;
import java.io.*;
public class Null_Invalid {
public static void main(String[] args) {
String Demo = null;
try {
if (Demo.equals("delftstack"))
System.out.print("The Strings are equal");
else
System.out.print("The Strings are not equal");
} catch (NullPointerException e) {
System.out.print("The String is null");
e.printStackTrace();
}
}
}
Der obige Code zeigt, dass die Verwendung einer Nullzeichenfolge ungültig sein kann. Dieser Code wirft die NullPointerException
, weil ein Null-String mit einem anderen String verglichen wird.
Siehe Beispiel:
The String is null
java.lang.NullPointerException: Cannot invoke "String.equals(Object)" because "Demo" is null
at delftstack.Null_Invalid.main(Null_Invalid.java:9)
Benutzerdefinierte Ausnahme für ungültige Eingaben in Java
Lassen Sie uns eine Ausnahme erstellen, wenn der Benutzer eine ID eingibt. Wenn es nicht in der Datenbank vorhanden ist, wird die Ausnahme ungültige ID ausgelöst.
Siehe Beispiel:
package delftstack;
import java.util.*;
class InValid_ID extends Exception {
public InValid_ID(String ID) {
super(ID);
}
}
public class Invalid_Input {
// Method to find ID
static void find_ID(int input_array[], int ID) throws InValid_ID {
boolean condition = false;
for (int i = 0; i < input_array.length; i++) {
if (ID == input_array[i]) {
condition = true;
}
}
if (!condition) {
throw new InValid_ID("The ID is you Entered is InValid!");
} else {
System.out.println("The ID is you Entered is Valid!");
}
}
public static void main(String[] args) {
Scanner new_id = new Scanner(System.in);
System.out.print("Enter the ID number: ");
int ID = new_id.nextInt();
try {
int Input_Array[] = new int[] {123, 124, 134, 135, 145, 146};
find_ID(Input_Array, ID);
} catch (InValid_ID e) {
System.out.println(e);
e.printStackTrace();
}
}
}
Der Code erstellt eine Ausnahme, die ausgelöst wird, wenn die Eingabe-ID ungültig ist, was bedeutet, dass sie nicht in der Datenbank vorhanden ist. Auf ähnliche Weise kann basierend auf der Bedingung eine Ausnahme erstellt werden.
Ausgang:
Enter the ID number: 122
delftstack.InValid_ID: The ID is you Entered is InValid!
delftstack.InValid_ID: The ID is you Entered is InValid!
at delftstack.Invalid_Input.find_ID(Invalid_Input.java:20)
at delftstack.Invalid_Input.main(Invalid_Input.java:33)
Sheeraz is a Doctorate fellow in Computer Science at Northwestern Polytechnical University, Xian, China. He has 7 years of Software Development experience in AI, Web, Database, and Desktop technologies. He writes tutorials in Java, PHP, Python, GoLang, R, etc., to help beginners learn the field of Computer Science.
LinkedIn FacebookVerwandter Artikel - Java Exception
- Ausnahme im Hauptthread Java.Util.NoSuchElementException: Keine Zeile gefunden
- Ausnahme im Thread AWT-EventQueue-0 java.lang.NullPointerException
- Beheben Sie die Java.Net.BindException: Adresse wird bereits verwendet: Bind
- Der Java-Gateway-Prozess wurde beendet, bevor seine Portnummer gesendet wurde
- Java Throwable vs. Ausnahmeklasse