Uma matriz é usada para armazenar um conjunto de elementos de dados do mesmo tipo. A maioria das linguagens de programação suporta matrizes. Mesmo que uma matriz possa armazenar vários valores; existe uma grande desvantagem. Depois que a matriz é criada, não é possível alterá-la. Se o programador declarou uma matriz de 10 elementos, ele não pode armazenar 15 elementos. Quando o programador declara uma matriz de 10 elementos e armazena apenas 5 elementos, o restante da memória alocada é um desperdício. Linguagens de programação como Java possuem coleções para armazenar elementos de dados dinamicamente. Há várias coleções. As coleções ajudam a adicionar, remover elementos e outras operações. A interface base é conhecida como coleção. Set, List e Queue são algumas interfaces que estendem a interface Collection. O mapa é uma interface da hierarquia da coleção, mas não estende a interface da coleção. TreeSet é uma classe que implementa a interface Set e armazena os elementos em ordem crescente. TreeMap é uma classe que implementa a interface Map e armazena pares de chaves e valores em ordem crescente. Esse é o diferença chave. Este artigo discute a diferença entre TreeSet e TreeMap.
1. Visão geral e principais diferenças
2. O que é o TreeSet
3. O que é o TreeMap
4. Semelhanças entre TreeSet e TreeMap
5. Comparação lado a lado - TreeSet vs TreeMap em forma de tabela
6. Resumo
O TreeSet é uma classe que implementa a interface Set. O TreeSet mantém elementos exclusivos. TreeSet implementa a interface NavigableSet. A interface Navegável estende as interfaces SortedSet, Set, Collection e Iterable em ordem hierárquica. TreeSet armazena os elementos em ordem crescente. Se a ordem de inserção for A, C, B, o TreeSet os armazenará como A, B, C. Existem métodos do TreeSet. O método add é usado para adicionar um elemento ao conjunto. O método remove é usado para remover um elemento especificado. O método clear é usado para remover todos os elementos. O método contains retorna true se o elemento especificado estiver presente no conjunto. Eles são alguns métodos fornecidos pelo TreeSet. Consulte o programa abaixo.
Figura 01: Programa usando o TreeSet
De acordo com o programa acima, Treeset é um objeto do tipo TreeSet. Pode armazenar cordas. Os elementos são adicionados usando o método add. A ordem de inserção é A, C, D e B. Usando o iterador, os valores armazenados são impressos na tela. Os elementos são armazenados na ordem A, B, C, D. Portanto, o TreeSet mantém uma ordem crescente dos elementos do conjunto. Se houver outro elemento como “D”, ele não será impresso porque o elemento D já existe no conjunto. Armazena sempre elementos únicos.
TreeMap é uma classe que implementa a interface Map. O mapa suporta pares de valores-chave. Cada chave, par de valores é uma entrada. Cada chave é única e tem um valor correspondente. O método containsKey é usado para encontrar uma chave específica, enquanto o método containsValue é usado para encontrar um valor específico. O método get é usado para encontrar o valor correspondente à chave especificada. O método put é usado para armazenar um valor com a chave fornecida. Também é possível remover um elemento em uma chave específica usando o método remove. Esses são alguns métodos comuns da interface do mapa. Ajuda a pesquisar, inserir e excluir elementos com base na chave. A classe TreeMap implementa NavigableMap. O NavigableMap estende o SortedMap. SortedMap estende o mapa. Portanto, os métodos do Map podem ser usados com o TreeMap. Consulte o programa abaixo.
Figura 02: Programa usando o TreeMap
De acordo com o programa acima, um objeto do TreeMap é criado. O programador pode adicionar elementos usando o objeto. O método put é usado para inserir pares de chave e valor. O método get é usado com a chave específica para buscar os elementos. O programador pode usar o Map.Entry para imprimir todas as chaves e valores. Ao observar a saída, ela não mantém a ordem inserida. Armazena os elementos em ordem crescente.
TreeSet vs TreeMap | |
TreeSet é uma classe que implementa a interface Set e armazena os elementos em ordem crescente. | TreeMap é uma classe que implementa a interface Map e armazena pares de chaves e valores em ordem crescente. |
Interface implementada | |
TreeSet implementa interface Set. | O TreeMap implementa a interface do Mapa. |
Uma matriz é usada para armazenar um conjunto de elementos, mas não ajuda a armazenar elementos dinamicamente. Linguagens de programação como Java contêm coleções para armazenar elementos de dados dinamicamente. Coleção é a classe base na hierarquia de coleções. Consiste em classes e interfaces para executar operações como adicionar e excluir elementos. Set e Map são duas interfaces da hierarquia de coleções. TreeSet é uma classe que implementa a interface Set e armazena os elementos em ordem crescente. TreeMap é uma classe que implementa a interface Map e armazena pares de chaves e valores em ordem crescente. Essa é a diferença entre TreeSet e TreeMap.
1. "TreeSet em Java - javatpoint". , Ponto de Java. Disponivel aqui
2. “TreeMap em Java - javatpoint.”, Java Point. Disponivel aqui