2013-08-17 19 views
7

Witam Studiuję Java i jestem po prostu zakłopotany pytaniem, które pojawia się w moich egzaminach.Różne typy list

Mówi się, abyśmy używali klasy do naszych kolekcji.

Zwykle w mojej głównej klasie po prostu sporządzam listę typu, którego potrzebuję, np. Konta bankowe lub cokolwiek innego. Ale myślę, że powinniśmy zrobić zajęcia dla wszystkich naszych danych. Próbowałem tego i sprawiłem, że były statyczne i zawierały streszczenie klasy, ponieważ nie muszę wykonywać kopii samej klasy.

Co chcę wiedzieć, dlaczego ludzie nie tworzą listy, która może zrobić wszystko, co lista i lista może zrobić w jednym, dlaczego są różne typy? Jakie są zalety posiadania różnych typów? Ps robi kolekcję tylko oznacza klasę dla wszystkich twoich danych?

+4

Nie rozumiem pytanie. Pytasz, dlaczego istnieje wiele implementacji List, takich jak ArrayList i LinkedList? Każdy przykład kodu, który możesz udostępnić, z jasnym wyjaśnieniem tego, czego nie rozumiesz? –

+1

'ArrayList' * jest * klasą dla kolekcji - implementuje' List', która implementuje 'Collection'. –

+0

Czy dobrą praktyką jest posiadanie wszystkich list w jednej klasie? – Sam

Odpowiedz

12

Każda lista ma swój własny Zastosowanie:

  • ArrayList zachowuje się jak Resizable-tablicy

  • LinkedList mogłyby być użyte jako kolejka FIFO

  • Stos oczywiście jest stosem (LIFO)

Oto javadoc dla listy:

http://docs.oracle.com/javase/6/docs/api/java/util/List.html

+2

stos to stos? stos jest LIFO. – bsd

+1

Tak, ale zakładam, że większość ludzi wie, że stos jest równy LIFO. W większości przypadków mówimy po prostu stos, gdy mamy na myśli LIFO. Dobrze? – Mingyu

Powiązane problemy