Avatar billede trp79 Nybegynder
10. marts 2003 - 00:48 Der er 8 kommentarer og
1 løsning

equals i if-sætning

Hejsa, jeg har lidt problemer med en if-sætning.
Jeg tror det er fordi jeg ikke helt ved hvordan equals fungerer at jeg har problemet.

Min if-sætning ser således ud:
if(jTFAddFNavn.getText().equals("") || jTFAddFNavn.getText().equals("Du skal angive et navn"))
{
jTFAddFNavn.setText("Du skal angive et navn");
jTFAddFNavn.requestFocus();
}

Når jeg opretter textfeltet siger jeg jTFAddFNavn.setText(""); Og når jDialogen med feltet åbnes requester jeg fokus på dette textfelt.
Men jeg kommer aldrig ind i if-sætningen selvom jeg bare ikke indtaster noget i det, hvordan kan det være?
Avatar billede medions Nybegynder
10. marts 2003 - 01:15 #1
if(jTFAddFNavn.getText().equals("") || jTFAddFNavn.getText == null {
jTFAddFNavn.setText("Du skal angive et navn");
jTFAddFNavn.requestFocus();
}

//>Rune
Avatar billede trp79 Nybegynder
10. marts 2003 - 01:30 #2
Hej Rune,
Der er jo ikke nogen null værdi i teksfeltet fra start af da jeg siger:
jTFAddFNavn.setText(""); ved oprettelsen af tekstfeltet.
Jeg testede lige med null for en sikkerhedsskyld, desværre uden resultat :o(

Har du andre ideer? :o)
Mvh
Torben
Avatar billede trp79 Nybegynder
10. marts 2003 - 01:32 #3
Jeg siger "|| jTFAddFNavn.getText().equals("Du skal angive et navn")" for at man heller ikke må tilføje et objekt med navnet på fejlbeskeden.
Avatar billede medions Nybegynder
10. marts 2003 - 01:54 #4
*G* fair nok.. -Well, jeg er ved at sætte mig ind i det her Java noget...

Jeg er igang med at sætte mig ind i JSP, og der skal man både tjekke for null og equals(""), så det kunne jo være at det oxo var sådan her ;o)

//>Rune
Avatar billede erikjacobsen Ekspert
10. marts 2003 - 07:03 #5
Måske din if-sætning slet ikke udføres ?
Avatar billede _carsten Nybegynder
10. marts 2003 - 08:11 #6
Sådan kan du gøre

    String s = "";
    if(s.compareTo(feltXXX.getText()) == 0)
        System.out.println("Der skal skrives et navn!!); 

Carsten
Avatar billede trp79 Nybegynder
11. marts 2003 - 07:53 #7
Jeg har nu fået det løst, men hvorfor det ikke virkede med equals eller compareTo det fatter jeg ikke. Jeg satte istedet en boolean variabel ind og det funkede med det samme, så nu ser koden sådan ud:

boolean ikkeTom=true;

if(jTFAddKPNavn.getText().equals("") || jTFAddKPNavn.getText().equals("Du skal angive et navn"))
{
  jTFAddKPNavn.setText("Du skal angive et navn");
  jTFAddKPNavn.requestFocus();
  ikkeTom=false;
}

if(m.findesKP(kPListe, jTFAddKPNavn.getText(), ""))  //Findes en person med det indtastede navn i forvejen?
{
  jTAAddKPNoter.setText("Et person med navnet "+jTFAddKPNavn.getText()+" findes i forvejen.\nVælg nyt navn");
  jTAAddKPNoter.setText("");
  jTFAddKPNavn.requestFocus();
}

else if(ikkeTom)
{
  date = new Date();
  KontaktPerson temp = new KontaktPerson(f, jTFAddKPStilling.getText(), jTFAddKPNavn.getText(),jTFAddKPTlf.getText(),jTFAddKPMobil.getText(), jTFAddKPEmail.getText(), jTAAddKPNoter.getText(), df.format(date));
  kPListe.add(temp);
  jTFAddKPNavn.setText("");
  jTFAddKPStilling.setText("");
  jTFAddKPTlf.setText("");
  jTFAddKPMobil.setText("");
  jTFAddKPEmail.setText("");
  jTAAddKPNoter.setText("");
  jTFAddKPNavn.requestFocus();
  ikkeTom=true;
}

Tak for forsøgene :o)
Mvh
Torben
Avatar billede _carsten Nybegynder
11. marts 2003 - 10:51 #8
compareTo virker.
Men jeg skulle måske have vist det på denne måde istedet for, jeg overså
at du initialiserede dit JTextField med en værdi. Sorry - men nedenstående
SKAL virke i denne situation.


    String s = "Du skal angive et navn";
    if(s.compareTo(jTFAddKPNavn.getText()) == 0)
        System.out.println("Der skal skrives et navn!!); 

Carsten
Avatar billede trp79 Nybegynder
11. marts 2003 - 15:13 #9
Bare rolig jeg havde set din streng s ikke sammenlignede på "" eller "Du skal angive et navn". Men det virkede stadigvæk ikke, det er mega sort :o(
Men jeg takker i hvert fald på forsøgene, nu står den fremover på true/false i sådanne situationer..

Mvh
Torben
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester