Prüfen ob die Variable etwas enthält



  • In C wüsste ich wie ich dies tun kann, jedoch nicht in Java, wie kann ich überprüfenn
    bei folgenden Variablen, ob der benutzer etwas eingegeben hat:

    x_start = Integer.parseInt (TfX.getText ());
    y_start = Integer.parseInt (TfY.getText ());
    breite_start = Integer.parseInt (TfBreite.getText ());
    hoehe_start = Integer.parseInt (TfHoehe.getText ());
    col = Integer.parseInt (TfCol.getText ());
    row = Integer.parseInt (TfRow.getText ());
    // Farbe aufnehmen
    scolor = TfColor.getText ();
    


  • Die parseInt-Methode wirft eine NumberFormatException wenn der String der ihr übergeben wird keinen Inhalt besitzt der zu parsen wäre. Wenn also "" das Ergebnis eines deiner getText()-Methoden ist müsste die Exception geworfen werden.



  • Hm stimmt, wenn ich nix eingebe oder leerzeichen passiert beim klicken nix,
    Gestern hat es als nix mehr gezeichnet, jetzt zeichnet es den Bildschirm nicht
    mehr neu.
    komisch

    Edit:
    gebe ich alles außer der Farbe an, so verschwinden alle Objekte, wie kann ich
    den String der an scolor geht überprüfen?



  • Die Klasse String besitzt einige Methoden mit denen man vergleichen kann. equals beispielsweise



  • Also gibt es keine Universalmethode wie in C auf 0 zu prüfen.
    Werde mit scolor.euqals vergleichen, hoffe das klappt 🙂
    Da kann ich auch gleich testen ob der Farbcode 6Stellen lang ist.

    Edit:
    Habe es jetzt so gelöst:
    if (scolor.length () != 6) scolor = "BB0033";

    verhindert zwar nicht, dass etwas anderes als Hexzahlen eingegeben werden, aber
    es ist ja kein Super-Programm das gegen alles abgesichert sein soll.



  • Wenn ein Objekt null ist dann kannst du eh keine Nachrichten mehr an das Objekt senden - wirst gleich eine NullPointerException kriegen.



  • CengizS schrieb:

    Wenn ein Objekt null ist dann kannst du eh keine Nachrichten mehr an das Objekt senden - wirst gleich eine NullPointerException kriegen.

    Das führt aber nicht zur beendigung des Programmes oder?
    Da ich meine Werte noch korrigieren kann und es auf Klick neu zeichnen.



  • SirLant schrieb:

    CengizS schrieb:

    Wenn ein Objekt null ist dann kannst du eh keine Nachrichten mehr an das Objekt senden - wirst gleich eine NullPointerException kriegen.

    Das führt aber nicht zur beendigung des Programmes oder?
    Da ich meine Werte noch korrigieren kann und es auf Klick neu zeichnen.

    Dann soltlest du vorher prüfen "if (scolor == null)"


Anmelden zum Antworten