Witajcie.
Od paru dni uczę się prężnie Javy. Dziś pisałem kolejny treningowy program (tym razem połączenie instrukcji warunkowej z właściwościami String) i mam pewien problem/pytanie.
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
Scanner input = new Scanner (System.in);
System.out.println("Podaj zdanie");
String s = input.nextLine();
System.out.println("Podaj wyraz, którego chcesz znaleźć index");
System.out.println(s.indexOf(input.nextLine()));
System.out.println("Chcesz dowiedzieć się ile liter ma to zdanie?");
String o = input.nextLine();
if (o == "tak")
{
System.out.println("To zdanie ma " + o.length() + " liter");
}
else
{
System.out.println("Nie to nie :D");
}
}
}
Mój problem polega na tym, że przy wpisaniu "tak" do String'a o nie wykonuje się instrukcja zawarta w if tylko zawsze to co jest w else. Co źle robię? Jak już wspomniałem dopiero co zaczynam więc proszę o wyrozumiałość jeżeli mój problem jest błahy. Przy okazji prosiłbym o sprawdzenie czy mój kod jest poprawny (czy można napisać to samo jakoś lepiej?). Dziękuję za pomoc :)