Belangrijk verschil – TreeSet vs TreeMap
Een array wordt gebruikt om een set gegevenselementen van hetzelfde type op te slaan. De meeste programmeertalen ondersteunen arrays. Ook al kan een array meerdere waarden opslaan; er is een groot nadeel. Nadat de array is gemaakt, is het niet mogelijk om deze te wijzigen. Als de programmeur een array van 10 elementen heeft gedeclareerd, kan hij geen 15 elementen opslaan. Wanneer de programmeur een array van 10 elementen declareert en slechts 5 elementen opslaat, is de rest van het toegewezen geheugen een verspilling. Programmeertalen zoals Java hebben verzamelingen om gegevenselementen dynamisch op te slaan. Er is een aantal collecties. Verzamelingen helpen bij het uitvoeren van het toevoegen, verwijderen van elementen en andere bewerkingen. De basisinterface staat bekend als Collection. Set, List en Queue zijn enkele interfaces die de Collection-interface uitbreiden. Kaart is een interface van collectiehiërarchie, maar het is geen uitbreiding van de collectie-interface. TreeSet is een klasse die de Set-interface implementeert en de elementen in oplopende volgorde opslaat. TreeMap is een klasse die de kaartinterface implementeert en sleutel-, waardeparen in oplopende volgorde opslaat. Dat is het belangrijkste verschil. Dit artikel bespreekt het verschil tussen TreeSet en TreeMap.
Wat is TreeSet?
De TreeSet is een klasse die de Set-interface implementeert. De TreeSet behoudt unieke elementen. TreeSet implementeert de NavigableSet-interface. De Navigable-interface breidt de SortedSet-, Set-, Collection- en Iterable-interfaces uit in hiërarchische volgorde. TreeSet slaat de elementen in oplopende volgorde op. Als de volgorde van invoegen A, C, B is, zal de TreeSet ze opslaan als A, B, C. Er zijn methoden voor TreeSet. De add-methode wordt gebruikt om een element aan de Set toe te voegen. De verwijdermethode wordt gebruikt om een gespecificeerd element te verwijderen. De clear methode wordt gebruikt om alle elementen te verwijderen. De methode bevat retourneert een waar als het opgegeven element aanwezig is in de set. Dit zijn enkele methoden die worden aangeboden door TreeSet. Raadpleeg het onderstaande programma.
Figuur 01: Programmeren met TreeSet
Volgens het bovenstaande programma is Treeset een object van het type TreeSet. Het kan Strings opslaan. De elementen worden toegevoegd met behulp van de add-methode. De invoegvolgorde is A, C, D en B. Met behulp van de iterator worden de opgeslagen waarden op het scherm afgedrukt. De elementen worden opgeslagen in de volgorde A, B, C, D. Daarom handhaaft de TreeSet een oplopende volgorde van de elementen van de Set. Als er een ander element als "D" is, wordt het niet afgedrukt omdat het element D al in de Set bestaat. Het slaat altijd unieke elementen op.
Wat is TreeMap?
TreeMap is een klasse die de kaartinterface implementeert. Map ondersteunt sleutel-waardeparen. Elk sleutel-, waardepaar is een invoer. Elke sleutel is uniek en heeft een bijbehorende waarde. De methode bevatKey wordt gebruikt om een specifieke sleutel te vinden, terwijl de methode bevatValue wordt gebruikt om een specifieke waarde te vinden. De get-methode wordt gebruikt om de waarde te vinden die overeenkomt met de gegeven sleutel. De put-methode wordt gebruikt om een waarde op te slaan met de opgegeven sleutel. Het is ook mogelijk om een element op een bepaalde toets te verwijderen met behulp van de verwijdermethode. Dat zijn enkele veelvoorkomende methoden van de kaartinterface. Het helpt bij het zoeken, invoegen en verwijderen van elementen op basis van de sleutel. TreeMap klasse implementeert NavigableMap. NavigableMap breidt SortedMap uit. SortedMap breidt kaart uit. Daarom kunnen de methoden van Map worden gebruikt met TreeMap. Raadpleeg het onderstaande programma.
Figuur 02: Programmeren met TreeMap
Volgens bovenstaand programma wordt een object van TreeMap gemaakt. De programmeur kan elementen toevoegen met behulp van het object. De put-methode wordt gebruikt om sleutel-, waardeparen in te voegen. De get-methode wordt gebruikt met de specifieke sleutel om de elementen op te halen. De programmeur kan Map. Entry gebruiken om alle sleutels en waarden af te drukken. Bij het observeren van de uitvoer wordt de ingevoegde volgorde niet gehandhaafd. Het slaat de elementen op in oplopende volgorde.
Wat zijn de overeenkomsten tussen TreeSet en TreeMap?
- Zowel TreeSet als TreeMap bevinden zich in de collectiehiërarchie.
- Zowel TreeSet als TreeMap behouden de oplopende volgorde.
- Zowel TreeSet als TreeMap kunnen veel elementen opslaan en manipuleren.
Wat is het verschil tussen TreeSet en TreeMap?
TreeSet vs TreeMap |
|
TreeSet is een klasse die de Set-interface implementeert en de elementen in oplopende volgorde opslaat. | TreeMap is een klasse die de kaartinterface implementeert en sleutel- en waardeparen in oplopende volgorde opslaat. |
Geïmplementeerde interface | |
TreeSet implementeert Set-interface. | TreeMap implementeert kaartinterface. |
Samenvatting – TreeSet vs TreeMap
Een array wordt gebruikt om een set elementen op te slaan, maar het helpt niet om elementen dynamisch op te slaan. Programmeertalen zoals Java bevatten verzamelingen om gegevenselementen dynamisch op te slaan. Verzameling is de basisklasse in de verzamelingshiërarchie. Het bestaat uit klassen en interfaces om bewerkingen uit te voeren, zoals het toevoegen en verwijderen van elementen. Set en Map zijn twee interfaces van de collectiehiërarchie. TreeSet is een klasse die de Set-interface implementeert en de elementen in oplopende volgorde opslaat. TreeMap is een klasse die de kaartinterface implementeert en sleutel-, waardeparen in oplopende volgorde opslaat. Dat is het verschil tussen TreeSet en TreeMap.