Zagadki Java zawierają różnego rodzaju niuanse języka i „podchwytliwe” fragmenty kodu. Każda następna zagadka będzie zawierała odpowiedź i wyjaśnienie do poprzedniej. Lista wszystkich zagadek.
Jeżeli znasz odpowiedź, podziel się nią w komentarzu!
Zagadka Java #12¶
Jaki będzie wynik uruchomienia poniższego programu?
public class NullWSwitch { public static void main(String[] args) { String str = null; switch (str) { case null -> System.out.println("str jest nullem."); case "kot" -> System.out.println("W zmiennej str schował się kot."); default -> System.out.println("Wartość zmiennej s to: " + str); } } }
Odpowiedź do poprzedniej zagadki #11¶
Poniżej znajdziesz odpowiedź do poprzedniej zagadki.
Uruchomienie programu z zagadki #11 spowoduje wyświetlenie na ekranie komunikatu Stay at home. Operator warunkowy && (AND – i) ma wyższy priorytet, niż operator || (OR – lub), więc najpierw wyznaczona zostania wartość wyrażenia raining && cold, czyli false. Następnie, obliczony zostanie wynik wyrażenia false || night. Wartość zmiennej night to true, więc wynikiem tego wyrażenia będzie true, ponieważ operator || zwraca true, gdy chociaż jeden z jego operandów (argumentów) ma wartość true.