Java kollektioner rammer giver applikationer med evnen til at modellen , gemme og behandle data inden for forskellige typer af struktur. Ved udviklingen af en ansøgning , skal Java-programmører beslutte, hvilke typer indsamlingen til at bruge, skræddersy denne afgørelse til dataene og behandle et program, den forsøger at styre. Både Set og List typer er fælles træk i Java udvikling , hver med forskellige karakteristika gør dem velegnet til bestemte sammenhænge. Java Samlinger
Java kollektioner rammer giver mange typer af struktur for lagring af programdata . Sproget skitserer klasser , grænseflader og metoder designet til almindelige typer af datalagring og manipulation , så programmører ikke behøver at gennemføre deres egne samlinger klasser i de fleste tilfælde. Hvis programmører beslutter at skabe deres egne klasser , kan de også være i stand til at minimere mængden af behandling, der kræves , ved at udvide eller gennemføre nogle af de klasser og grænseflader allerede er fastsat som en del af samlingerne rammer.
< Br > dubletter
En af de vigtigste overvejelser for udviklere vælger datastrukturer er, om ikke dubletter er påkrævet. Valget mellem sæt og lister er ofte delvist bestemt af denne overvejelse. Generelt tillader Lister dubletter , mens sæt ikke. Udviklere , der er involveret i et projekt , skal derfor beslutte , om de data, der modellerede skal indeholde dubletter , i hvilket tilfælde en liste kan være den bedste løsning. Hvis logikken i en ansøgning dikterer , at ingen dubletter kan tillades , kan et sæt være den foretrukne løsning .
Bestilling
Bestilling forskellig inden Set og List indsamling klasser. Liste klasser kan opretholde et system for bestilling for data, de modellen , mens Sets ikke håndhæver bestilling. Hvis et program kræver data skal lagres i en bestemt rækkefølge , for eksempel dikterer den rækkefølge, som den skal gennemløbes , så en liste kan vælges . Hvis dataene i et program samling ikke kræver nogen form for bestilling, kan et sæt anvendes.
Interfaces
Java definerer begge sæt og lister i form af grænseflader . En Java -interface er en kontrakt skitserer de egenskaber og metoder, observeret af klasser vælger at gennemføre den. Java-sproget giver utallige implementeringer af både sættet og List interfaces , men programmører kan vælge at oprette deres egne implementeringer. Liste grænseflader leveres som standard inden Java omfatter ArrayList , LinkedList og AbstractList klasser. Klasser gennemførelsen af SET -interface omfatter HashSet , TreeSet og EnumSet .
Metoder
Set og List klasser i Java definerer nogle af de samme metoder. Hver grænseflade inden for rammerne iværksætter metoder på måder, der er specifikke for indsamlingen type. Begge grænseflader omfatter metoder til at tilføje og fjerne dataelementer til og fra samlingen, samt metoder til at kontrollere, om et bestemt punkt allerede er indeholdt. Listen grænsefladen derudover specificerer metoder relateret til indeksering , for eksempel for at returnere indekser af bestemte elementer eller tilføje på et bestemt indeks.