En Java, las claves de mapa requieren igualdad de referencia, lo que no se puede lograr con tipos primitivos como int[]. Cuando se trabaja con matrices int[] y es necesario utilizarlas como claves en un mapa, es necesario convertirlas a un tipo de objeto adecuado. Exploremos varias opciones para esta conversión.
Java 8 introdujo un método conciso para convertir int[] a Integer[ ] usando la API de transmisión:
int[] data = {1,2,3,4,5,6,7,8,9,10};
Integer[] primitiveToBoxed = Arrays
.stream(data)
.boxed()
.toArray(Integer[]::new);
Un enfoque similar usando IntStream:
Integer[] primitiveToBoxed = IntStream
.of(data)
.boxed()
.toArray(Integer[]::new);
Si bien Integer[] puede servir como clave, puede que no sea ideal debido a:
Para un mejor rendimiento y unicidad clave, considere usar:
Recuerde, el mejor enfoque depende del tamaño del conjunto de datos y de los requisitos de rendimiento. Elegir la técnica adecuada le permite realizar un seguimiento eficiente de la frecuencia de combinaciones int[] en su conjunto de datos.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3