Podział stringa split

0
String s = "Adres:65";
String[] a = s.split(":");
System.out.println(a[0]);
System.out.println(a[1]);

if (a[0] == "Adres")
{
   System.out.println("Warunek spełniony");
}
else
{
   System.out.println("Warunek nie spełniony");
}
Adres
65
Warunek nie spełniony

Może mi ktoś wytłumaczyć dlaczego się tak dzieje?

0

Po raz nty to samo - stringi w Javie porownuje sie za pomoca equals() a nie == (to drugie czasami dziala, ale trzeba miec troche wiecej wiedzy jak dziala JVM).

0

Operator == nie służy do porównywania Stringów masz od tego odpowiednią metodę, więcej tutaj: http://javastart.pl/efektywne/javatraps-001-odpowiedz/

       if (a[0].equals("Adres")) {
            System.out.println("Warunek spełniony");
        }else{
            System.out.println("Warunek nie spełniony");
        }

1 użytkowników online, w tym zalogowanych: 0, gości: 1