Java >> Java tutorial >  >> Java

Samlinger i java

Hvad er samlinger i java?

En samling er simpelthen et objekt, der grupperer flere elementer i en enkelt enhed. Samlinger bruges til at gemme, hente, manipulere og kommunikere aggregerede data.

Fordel ved samlinger:

  • Samlinger kan vokse i naturen, dvs. baseret på vores krav kan vi øge og mindske størrelsen.
  • Samlinger kan indeholde både homogene og heterogene elementer.
  • Hver samlingsklasse er implementeret baseret på en eller anden standard datastruktur. Derfor er færdiglavet metodesupport tilgængelig for ethvert behov. Som programmør skal vi bruge metode, og vi er ikke ansvarlige for at levere implementering.

Ulempen ved samlinger:

  • Performance-synspunktsamlinger is anbefales ikke at bruge. Dette er indsamlingens begrænsning.

Hvilket koncept anbefales enten arrays eller samling?

Hvis du kender størrelsen på forhånd, er det stærkt anbefalede koncept Array .

Årsag:I forbindelse med indsamling er vi vokseværdige i naturen (Vi bliver ikke gratis, vi skal betale noget er ydeevne.)

Eksempel:Tag et array af størrelse 10.

0 1 2 3 4 5 6 7 8 9

A

Hvis den 11. th element kommer array vil fortælle, at jeg ikke kan yde support.

Men antag, at det er Arraylist derefter den 10. . element, vi indsatte

0 1 2 3 4 5 6 7 8 9

A

Nu hvis 11. th element kommer. En Arraylist i s fleksibelt det passer baseret på vores krav, kan vi øge eller mindske størrelsen.

Hvordan fungerer det?

Sådan er det 11. . element, der skal indsættes, føler ikke, at en anden hukommelse vil blive oprettet, og den vil indsætte eller 11. th element vil blive butik.

Når Arraylist når sin maksimale kapacitet, vil der blive oprettet en større Arraylist-hukommelse.

0 1 2 3 4 5 6 7 8 9

AL-KOPIERING

0 1 2 3 4 5 6 7 8 9 10

AL(Gentildel)

11 th element vil blive indsat

Efter kopiering af alle data til en anden Arraylist-skraldsamler vil den første arraylist-hukommelse deallokeres.

0 1 2 3 4 5 6 7 8 9

A

AFFALDINDSAMLING

  • Hvis vi skal gemme den 11. . element her er det ikke et stort problem, men hvis vi har 1 crore element, og så skal vi indsætte et element mere, vil det tage en måned eller 1 år.
  • Så præstationsmæssige samlinger er ikke op til målet.

Java tag