Witam. Mam następujący problem: Mam program, w którym można zarządzać firmą, np. dodawać pracowników, liczyć ich wypłatę itd. Wszyscy pracownicy są zapisaniu w kolekcji hashset. Przedstawiam początek głównej klasy i dwie metody:
import java.util.*;
public class Test
{
public Set set = new HashSet();
public Urzednik urzednik;
public Robotnik robotnik;
private int r;
private int i;
public <Pracownik>Iterator it = set.iterator();
public Pracownik znajdz(String nazwisko)
{
Pracownik p = null;
while(it.hasNext() && !it.next().nazw.equals(nazwisko) )
{
}
if(it.hasNext())
{
p=it.next();
}
return p;
}
public boolean przyjmijRobotnika(String nazwisko,double etat,int godzin)
{
robotnik = new Robotnik(nazwisko,etat,godzin);
if(znajdz(nazwisko)==null)
{
set.add(robotnik);
return true;
}
else
{
return false;
}
}
}
I próbuję dodać nowego pracownika, zwraca mi true, a potem korzystam z metody 'znajdź' i okazuje się, że zwraca mi null, czyli tak jakby tego pracownika nie było. Dodam jeszcze, że przy kompilowaniu wyskakuje mi takie okienko :"<ścieżka do klasy Test> uses unchecked or unsafe operations. Recompile with -Xlint:unchecked for details". Nie wiem czy to ma jakikolwiek związek z problemem.