ArrayList a może inna??

0
 List<Book> bookList = new ArrayList<Book>();
        Book book = new Book("Star Wars", "John Smith", 2010);
        Book book1 = new Book("Star Wars1", "John Smith1", 2011);
        Book book2 = new Book("Star Wars2", "John Smith2", 2012);
        Book book3 = new Book("Star Wars3", "John Smith3", 2013);
        Book book4 = new Book("Star Wars4", "John Smith4", 2014);
        bookList.add(book);
        bookList.add(book1);
        bookList.add(book2);
        bookList.add(book3);
        bookList.add(book4);
        List<LibraryUser> libraryUser = new ArrayList<>();
        LibraryUser user = new LibraryUser("Greg", "Poland", "123456789");
        libraryUser.add(user);
        HashMap<LibraryUser, Book> bookUsers = new HashMap<>();
        bookUsers.put(user, book);
        bookUsers.put(user, book1);
        bookUsers.put(user, book2);
        bookUsers.put(user, book3);
        bookUsers.put(user, book4);

Witam, chciałbym do user'a przypisać 5 obiektów (book, book1, book2, book3, book4). Tak, aby obiekt user posiadał 5 obiektów klasy Book czyli book. Stworzyłem HashMapę, ale nadpisuje mi book1 na book, book2 na book1 itd. Proszę o pomoc. Dziękuję

0

Poczytaj jak działa mapa. Generalnie zawiera ona wartości klucz -> wartość i w tym przypadku gdy wpisujesz coś pod klucz który już istnieje w bazie, wartość zostaje nadpisana.
Rozumiem że chciałbyś przypisać użytkownikowi kilka książek. W takim wypadku, kluczem może być użytkownik, a wartością lista, którą będziesz modyfikował.

 HashMap<LibraryUser, List<Book>> bookUsers =  new HashMap<>(); 
 bookUsers.put(user,new ArrayList<>());
 bookUsers.get(user).add(book1);
 bookUsers.get(user).add(book2);
 bookUsers.get(user).add(book3);
0

Klucze musza byc unikalne.

0

bookUsers powinno być w klasie LibraryUuser i do niego dopisuj kolejne książki (Interfejs List)

  • poczytaj jak działa HashMapa i co to jest metoda hashCode i jakie ma zastosowanie i czemu akurat przy implemenetacji HashMapy musisz o tym wiedzieć.

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