Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2006
    Messaggi
    46

    [J2ME] errore comparazione stringhe

    Ragazzi è il mio primo programmino in J2ME quindi vi prego di non far caso alla banalità del codice..
    si tratta di una piccola login dove però c'è un errore nella comparazione della password immessa dall'utente con quella corretta,praticamente viene sempre stampato il messaggio di errore anche quando la password è corretta...
    questo è la parte di codice incriminata se occorre il sorgente completo potete chiedermelo...
    codice:
    .....
    psw = new TextField ("Inserire password per iniziare:\n","",10,TextField.PASSWORD);
    ...
    if(psw.equals("234"))
    {
            form.append(new StringItem(null, "Password Corretta"));
    	form.removeCommand(ok);
    	form.addCommand(back);
    }else
    {
    	form.append(new StringItem(null, psw.getString()+"errore"));
    	form.removeCommand(ok);
    	form.addCommand(back);
    }

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: [J2ME] errore comparazione stringhe

    Originariamente inviato da oNaSsI$
    psw = new TextField ("Inserire password per iniziare:\n","",10,TextField.PASSWORD);
    ...
    if(psw.equals("234"))
    Beh, certo. psw non è un String ma un TextField!! È il contenuto del TextField che devi testare, non l'oggetto TextField in sé.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2006
    Messaggi
    46
    hai ragione..infatti alla fine ho risolto in questo modo...
    codice:
    String app = psw.getString();
    if(app.equals("234"))
    ma la cosa strana è che non mi entrava nell'if neanche se facevo
    codice:
    if(psw.getString()=="234")

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da oNaSsI$
    ma la cosa strana è che non mi entrava nell'if neanche se facevo
    codice:
    if(psw.getString()=="234")
    La comparazione con l'operatore == confronta solo i due reference, non il contenuto degli oggetti, che nel tuo caso sono sicuramente diversi visto che "234" è una stringa literal mentre la stringa nel componente è istanziata a runtime.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2006
    Messaggi
    46
    Ahh..capito...ti ringrazio moltissimo per la disponibilità...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.