Em Java, as chaves de mapa exigem igualdade de referência, o que não pode ser alcançado com tipos primitivos como int[]. Ao trabalhar com arrays int[] e precisar usá-los como chaves em um Mapa, é necessário convertê-los para um tipo de objeto adequado. Vamos explorar várias opções para essa conversão.
Java 8 introduziu um método conciso para converter int[] em Integer[ ] usando API de fluxo:
int[] data = {1,2,3,4,5,6,7,8,9,10};
Integer[] primitiveToBoxed = Arrays
.stream(data)
.boxed()
.toArray(Integer[]::new);
Uma abordagem semelhante usando IntStream:
Integer[] primitiveToBoxed = IntStream
.of(data)
.boxed()
.toArray(Integer[]::new);
Embora Integer[] possa servir como uma chave, pode não ser ideal devido a:
Para melhor desempenho e exclusividade da chave, considere usar:
Lembre-se de que a melhor abordagem depende do tamanho do conjunto de dados e dos requisitos de desempenho. A escolha da técnica apropriada permite rastrear com eficiência a frequência das combinações int[] em seu conjunto de dados.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3