Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2012-01-27 19:53:45

  sojkin - Użytkownik

sojkin
Użytkownik
Skąd: Chorzów
Zarejestrowany: 2010-02-06

[java] błąd przy sprawdzaniu warunku

Jestem początkujący także proszę o wyrozumiałość. Chciałbym aby program który staram się napisać wyświetlił wiersz "test ok" w przypadku napisania ciągu "java" niestety za każdym razem otrzymuje "test zle", jaki zrobiłem błąd?

Kod:

 
package aplikacja1;
 
 
import java.io.*;
 
class Pomocnik{
 
    public String pobierzDaneWejsciowe(String komunikat){
 
        String daneWejsciowe = null;
        System.out.print(komunikat + " ");
        try{
 
            BufferedReader is  = new BufferedReader(new InputStreamReader(System.in));
            daneWejsciowe = is.readLine();
            if (daneWejsciowe.length() == 0) return null;
        }catch(IOException e){
 
            System.out.println("IOException: " + e);
        }
        return daneWejsciowe.toString();
}
}
 
 
public class Aplikacja1 {
 
 
    public static void main(String[] args) {
 
 
        Pomocnik q = new Pomocnik();
 
        String wpisanyTekst = q.pobierzDaneWejsciowe("Wpisz cokolwiek :");
        System.out.println(wpisanyTekst);
 
        if(wpisanyTekst.toString()=="java"){
        System.out.println("test ok ");
        } else {
            System.out.println("test zle ");
        }
 
 
    }
}

efekt

Kod:

run:
Wpisz cokolwiek : java
java
test zle
BUILD SUCCESSFUL (total time: 23 seconds)

Offline

 

#2  2012-01-27 20:38:10

  kamikaze - Administrator

kamikaze
Administrator
Zarejestrowany: 2004-04-16

Re: [java] błąd przy sprawdzaniu warunku

Zamiast:

Kod:

if(wpisanyTekst.toString()=="java")

powinno być:

Kod:

if(wpisanyTekst.equals("java"))

"==" nie nadaje się do porównywania stringów. W ten sposób porównujesz referencje do obiektów, różnych obiektów więc nie może być równe. Użycie toString() na obiekcie, który jest typu String nie jest potrzebne.

Ostatnio edytowany przez kamikaze (2012-01-27 20:38:50)

Offline

 

#3  2012-01-27 20:51:35

  sojkin - Użytkownik

sojkin
Użytkownik
Skąd: Chorzów
Zarejestrowany: 2010-02-06

Re: [java] błąd przy sprawdzaniu warunku

działa! dzięki wielkie :)

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
To nie jest tylko forum, to nasza mała ojczyzna ;-)