Ponieważ nikomu nie udało się zaznaczyć prawidłowej odpowiedzi (w tym zadaniu ok 1/3 osób udzieliła odpowiedzi i wybrana była każda poza prawidłową), więc zamieszczam to zadanie ze wszystkimi odpowiedziami do sprawdzenia przed następnym terminem egzaminu. Zwłaszcza proszę zwrócić uwagę w jaki sposób w Javie przechowywane są obiekty typu String.
Zadanie 17.
import java.util.HashSet;
public class HashTest {
private String str;
public HashTest(String str) { this.str = str; }
public static void main(String args[]) {
HashTest h1 = new HashTest("1");
HashTest h2 = new HashTest("1");
String s1 = new String("2");
String s2 = new String("2");
HashSet<Object> hs = new HashSet<Object>();
hs.add(h1); hs.add(h2);
hs.add(s1); hs.add(s2);
System.out.print(hs.size());
}
}
Wynikiem działania będzie:
a) Błąd kompilacji. b) Zostanie wyrzucony wyjątek podczas wykonania.
c) 2 d) 3 e) 4
