JOptionPane/catch/try/finally/if

Keksbrot123

Mitglied
Code:
package com.company;
import javax.swing.*;
import java.util.Scanner;



public class Main {

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        JOptionPane.showInputDialog(null, "Gib den Namen des Besitzers an um Zutritt zu erlangen");
        String hallo1 = scanner.nextLine();
        try {
            if (hallo1.equals("Peter")) {
                JOptionPane.showMessageDialog(null, "Genau, das ist der Besitzer");
            }
        }catch(Exception e){
            JOptionPane.showMessageDialog(null, "Falsch, das ist nicht der Name");


        }finally{
            JOptionPane.showMessageDialog(null, "Versuche es später nocheinmal");
        }





    }
}
Frage:
Code:
String hallo1 = scanner.nextLine();
Das scannt ja nur in der Konsole die nächste Zeile, aber wie scanne ich das, was ich in den InputDialog eingebe?
 
Java:
String hallo1 = JOptionPane.showInputDialog("Gib den Namen des Besitzers an um Zutritt zu erlangen");
 
Code:
package com.company;
import javax.swing.*;
import java.util.Scanner;



public class Main {

    public static void main(String[] args) {
       String hallo = JOptionPane.showInputDialog(null, "Gib den Namen des Besitzers an um Zutritt zu erlangen");

        try {
            if (hallo.equals("Peter")) {
                JOptionPane.showMessageDialog(null, "Genau, das ist der Besitzer");
            }
        }catch(Exception e){
            JOptionPane.showMessageDialog(null, "Falsch, das ist nicht der Name");


        }finally{
            JOptionPane.showMessageDialog(null, "Versuche es später nocheinmal");
        }





    }
}
irgendwie wird catch nicht ausgeführt, wenn ich was anderes eingebe
 
Weil keine Exception geworfen wird. Wenn der Benutzer nichts eingibt wird wohl nicht null gespeichert sondern ein leerer String ("").

Nimm doch einfach "else".
 

Zurück
Oben