Visualizzazione dei risultati da 1 a 3 su 3

Discussione: Comandi String e if

  1. #1

    Comandi String e if

    Salve io ho un problema con questi due comandi string e if.Stavo cercando di eseguire un semplice programma java che una volta inserita da parte dall'utente una parola rispondesse in due differenti modi,a secondo della parola inserita.Mi spiego meglio:Il programma se legge la parola "Ciao" da parte dell utente scrive risponde stampando "si" ;se la parola inserita è diversa da ciao,stampa "no".La sintassi del programma seguendo la mia logica è così:

    codice:
    import system.IO;
    public class Risposta{
      public static void main(String[] args){
         String a=IO.in.readString();
           if(a=="Ciao")
              IO.out.println("si");
           else
             IO.out.println("no");
       }
    }
    Il programma così scritto viene eseguito correttamente,però qualsiasi cosa io scriva,il programma mi stampa no.Mi potete spiegare perché e che cosa sbaglio ?

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,328
    Primo punto: String è una classe, non un comando. If è un'istruzione, non un comando. In Java non esistono comandi.
    Secondo punto: le stringhe sono oggetti e gli oggetti NON si confrontano usando l'operatore ==, ma usando l'apposito metodo equals() previsto per tutti gli oggetti.

    Quindi:

    codice:
    if ( a.equals("CIAO") ) {
       // a è la stringa CIAO
    } else {
       // a NON è la stringa CIAO
    }
    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  3. #3
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,480

    Moderazione

    Originariamente inviato da PaniKo_92
    Salve io ho un problema
    Era lo stesso problema posto in questa discussione, che chiudo.

    In futuro, è bene aprire un'unica discussione (possibilmente nel posto corretto) su un problema specifico.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

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.