Hallo zusammen,
ich habe gestern angefangen Java zu Programmieren.
Ich mache einen Udemy Kurs und hatte die Tolle Idee einen Passwort Login zu Programmieren um einfach mit Eclipse rumzuspielen und weiter zu lernen.
Soweit funktioniert das auch, doch ich bekomme die Info, dass der Scanner nicht geschlossen wird. Dass verstehe ich auch und habe gelesen, dass dieser auch nicht zwangsläufig geschlossen werden muss.
Da ich gerne besser werden würde, wäre meine frage, wo ich den Scanner closen soll, da sobald ich diesen direkt dahinter beende, kommt die Fehlermeldung:
Mein Code sieht folgendermaßen aus:
Wenn ich sc.close raus nehme, funktioniert es wie gesagt einwandfrei.
Ist mein erster Eintrag hier, sollte ich was falsch gemacht haben, sagt mir bitte bescheid.
Vielen Dank
Der Captain
ich habe gestern angefangen Java zu Programmieren.
Ich mache einen Udemy Kurs und hatte die Tolle Idee einen Passwort Login zu Programmieren um einfach mit Eclipse rumzuspielen und weiter zu lernen.
Soweit funktioniert das auch, doch ich bekomme die Info, dass der Scanner nicht geschlossen wird. Dass verstehe ich auch und habe gelesen, dass dieser auch nicht zwangsläufig geschlossen werden muss.
Da ich gerne besser werden würde, wäre meine frage, wo ich den Scanner closen soll, da sobald ich diesen direkt dahinter beende, kommt die Fehlermeldung:
Code:
Exception in thread "main"
java.util.NoSuchElementException: No line found
at java.base/java.util.Scanner.nextLine(Scanner.java:1651)
at main/Karton.passwort3x.main(passwort3x.java:20)
Mein Code sieht folgendermaßen aus:
Java:
package Karton;
import java.util.Scanner;
public class passwort3x{
public static void main(String[] args) {
String Passwort = "tr";
int a = 0;
int b = 0;
System.out.println("Bitte geben Sie Ihr Passwort ein um sich anzumelden.");
while (a<1){
Scanner sc = new Scanner(System.in);
String Eingabe = sc.nextLine();
sc.close();
if (Eingabe.contentEquals(Passwort)) {
System.out.println("Korrekt!");
a = a+1;
System.out.println(a);
} else if (Eingabe!=Passwort) {
System.out.println("leider nicht korrekt");
b = b+1;
} if (b==3) {
System.out.println("Sie haben das Passwort zu oft falsch eingeben!");
System.exit(0);
}
}}}
Wenn ich sc.close raus nehme, funktioniert es wie gesagt einwandfrei.
Ist mein erster Eintrag hier, sollte ich was falsch gemacht haben, sagt mir bitte bescheid.
Vielen Dank
Der Captain
Zuletzt bearbeitet von einem Moderator: