Java samlingar ram ger applikationer med förmåga att modellera , lagra och behandla data inom olika typer av struktur . När man utvecklar en applikation , måste Java programmerare bestämma vilka typer av insamling för att använda , anpassa detta beslut till data och bearbeta ett program den försöker hantera . Både in -och List typer är vanliga funktioner i Java utveckling , alla med olika egenskaper som gör dem lämpade för vissa sammanhang . Java Samlingar
Java samlingar ramverket ger många typer av struktur för att lagra programdata . Språket beskriver klasser , gränssnitt och metoder som utformats för vanliga typer av datalagring och manipulation , så att programmerare inte behöver genomföra sina egna samlingar klasser i de flesta fall . Om programmerare bestämmer dig för att skapa sina egna klasser , kan de också kunna minimera mängden bearbetning som krävs , genom att förlänga eller att genomföra några av de klasser och gränssnitt som redan finns som en del av samlingarna ram .
duplikat
En av de viktigaste faktorerna för utvecklare väljer datastrukturer är huruvida dubbletter krävs . Valet mellan set och listor ofta bestäms delvis av detta övervägande . I allmänhet , listor tillåter dubbletter , medan Ställer inte. Utvecklare som deltar i ett projekt måste därför avgöra om de uppgifter som modelleras måste innehålla dubbletter , i vilket fall en lista kan vara det bästa alternativet . Om logiken i ett program dikterar att inga dubbletter kan tillåtas , kan en uppsättning vara det bästa alternativet .
Beställning
Beställning skiljer inom Set och List samling klasser . Lista klasser kan upprätthålla ett system för beställning för uppgifter de modellen , medan Ställer inte genomdriva beställning . Om ett program kräver att data lagras i en viss ordning , till exempel dikterar i vilken ordning det ska passeras , sedan en lista kan väljas . Om uppgifterna i en ansökan samling inte kräver någon form av beställning , får ett set användas . Definierar båda uppsättningarna och listor i form av gränssnitt
Gränssnitt
Java . En Java-gränssnittet är ett avtal som beskriver de egenskaper och metoder som observerats av klasser väljer att genomföra det . Java ger många implementationer av både set och gränssnitt List , men programmerare kan eventuellt skapa sina egna implementeringar . Lista gränssnitt finns som standard i Java inkluderar ArrayList , LinkedList och klasser AbstractList . Klasser genomför Set gränssnittet inkluderar HashSet , TreeSet och EnumSet .
Metoder
Set och List klasser i Java definierar en del av samma metoder . Varje gränssnitt inom ramen implementerar metoder på ett sätt som är specifika för insamling typen . Båda gränssnitten innefattar metoder för att lägga till och ta bort data objekt till och från samlingen , liksom metoder för att kontrollera om ett visst objekt som redan finns . Listgränssnittet anger dessutom metoder relaterade till indexering , till exempel att returnera index i specifika element eller lägga till ett visst index .