equals leerer string

  • Naja das break würde in diesem Fall eher nur das if beenden ... in dem aber ehh nix drinnen steht.

    Wenn du das ganze Programm beenden willst (und das auf paste-it.net nicht alles ist) musst es mit einer Exception machen.

    Aber wenn es so ist wie auf dem Link kommt nach dem if ehh nichtsmehr (außer diversen weiteren if-else) und daher beendet sich das Programm danach ehh.

    lg

  • Das Programm beendet sich leider nie!?

    Wenn ich nichts eingebe, dann geht er mir immer nur eine Zeile weiter runter.. und wenn ich dann wieder einen Namen eingebe, kommt halt wieder die Namensausgabe...

  • Naja das break würde in diesem Fall eher nur das if beenden ... in dem aber ehh nix drinnen steht.


    Nee das stimmt schon so. break beendet keine Bedingungen sondern nur Schleifen: http://java.sun.com/docs/books/tut…lts/branch.html ;

    Zitat von Krackmoe


    Wenn ein NICHTS eingegeben wird, soll er abbrechen. Das tut er mir aber nicht!?

    Wie bitte gibt man denn ein NICHTS ein? :wave: Wenn Du RETURN drueckst, dann gibst Du ja zumindest mal einen Zeilenumbruch ein.

  • Horrendus: Hehe.. jeder deiner 3 Sätze ist falsch :)

    Krackmoe:
    Schau mal hier (ist übrigens immer ein guter Ort zum Nachlesen ;) :( "A Scanner breaks its input into tokens using a delimiter pattern, which by default matches whitespace."

    Der Scanner macht für deinen Zweck etwas zu viel, du willst ja eigentlich wirklich nur das Klump einlesen. Was du brauchst ist eher etwas in der Art:

    Let us be thankful we have commerce. Buy more. Buy more now. Buy. And be happy.

  • zu der Erkennung von "nichts" ist glaub ich eh schon genug gesagt worden. Ich könnte empfehlen, die whitespaces zu trimmen, und zwar mit trim(). Wenn Du tatsächlich die gesamte methode abbrechen möchtest, die ja void ist, musst Du das break, gegen return austauschen. Außerdem würde ich davor zur Sicherheit noch auf null checken, also

    http://paste-it.net/4981
    if ( antwort.equals("")) {
    break;
    }

    Code
    if (antwort == null || antwort.trim().equals("")) {
       return;
    }

    *** Make it idiot proof, and someone will build a better idiot. ***

  • [fl]Quel`Tos hat schon auf die java API von Scanner veriwesen.

    die Scanner klasse bietet netterweise eine instanzmethode die boolean ist und sich "hasNext()" nennt. solange noch eine eingabe kommt (sprich: kein EOF gesendet wird) gibt die methode true zurück. eignet sich daher recht gut als bedingung für eine while schleife.

  • maciek das überprüfen auf null kann man elegant umgehen, indem man das ganze so schreibt:

    Code
    if ("".equals(....)) { }

    "In der Informatik geht es genau so wenig um Computer, wie in der Astronomie um Teleskope." - Edsger Wybe Dijkstra

  • maciek das überprüfen auf null kann man elegant umgehen, indem man das ganze so schreibt:

    Code
    if ("".equals(....)) { }


    das stimmt, allerdings ist da die Möglichkeit des " ", die ich mit trim() abfangen würde nicht berücksichtigt ...

    *** Make it idiot proof, and someone will build a better idiot. ***

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!