Vector

0

Witam wszystkich !

Jak w Javie ustawic obiekt klasy Vector o ustalonej liczbie elementow i tak aby sie nie powiekszal w czasie dodawania do niego obiektow.
Cos takiego jak w tablicy, ktora ma 5 indekxow i tylko 5 elementow mozna do niej wrzucic.

Z gory dzieki za pomoc.
Nowy

0

Witam
Z tego co wiem to nie da się z góry ograniczyć rozmiaru Vektora.
Możesz za każdym razem gdy chcesz cos dodać sprawdzać metodą
size()
czy wektor zawiera okreslona liczbę obiektów.

0

Witam
Z tego co wiem to nie da się z góry ograniczyć rozmiaru Vektora.
Możesz za każdym razem gdy chcesz cos dodać sprawdzać metodą
size()
czy wektor zawiera okreslona liczbę obiektów.

Dzieki !
Tego sie obawialem.
To o czym piszesz jak mialoby wyglądać?
Moze tak?-
Vector we = new Vector();
int ile=we.size();
if (ile<=5)
we.add(obiekt);
czy o cos takiego chodzi?

a jak dziala cos takiego:
we.setSize(5);
i jak oraz kiedy to stosowac ?

Pozdrawiam.

0

Poczytaj o kolekcjach na
http://java.sun.com/docs/books/tutorial/collections/index.html

Tam masz wszytsko z przykładami wytłumaczone.Poza tym jesli chcesz mieć z góry ustalony rozmiar kolekcji to czemu nie zastosujesz tablicy??

P.S. Nie wiem jak to jest w JDK 1.5 bo z tego co wiem zaszły tam zmiany à propos kolekcji.

0

Zaszly zmiany kosmetyczne, ale bajtkod sie nie zmienil :( Java szybsza nie bedzie. Jesli chcesz staly rozmiar i zalezy Ci na szybkosci, to TABLICE SA NAJLEPSZE. Poza tym mozesz zadeklarowac od razu typ przechowywanych elementow, a w Vector masz tylko Object i musisz rzutowac, a rzutowania dynamiczne sa jak wiadomo dosyc wolne. I lepiej uzywaj ArrayList zamiast Vector, jesli nie musisz miec kolekcji "thread-safe".

BTW.
Kolekcje to jedna z najwiekszych zmor wydajnosciowych w Javie, podobnie jak strumienie STL i stringi copy-on-write w C++. Warto im sie przyjrzec w pierwszej kolejnosci, jesli program sie za bardzo muli.

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