El método Arrays compare() en Java viene bajo la clase Arrays y el paquete java.util . Este método compara dos arrays lexicográficamente (orden del diccionario). Hay dos versiones diferentes de sobrecargas diferentes para arrays booleanas, de bytes, char, dobles, flotantes, int, largas, cortas y de objetos. Este método devuelve valores según los casos mencionados a continuación.
- Devuelve 0 si la array es igual a la otra array.
- Devuelve un valor menor que 0 si la array es lexicográficamente menor que la otra array en
- Devuelve un valor mayor que 0 si la array es lexicográficamente mayor que la otra array (más caracteres).
Una array nula es lexicográficamente menor que una array no nula, y las dos arrays se consideran iguales si ambas son nulas, por lo que imprimirá 0 en este caso.
Sintaxis:
Arrays.compare(array1,array2); // array1 and array2 are two arrays
Parámetros y tipo de devolución: el método compare() acepta una array como parámetros con diferentes tipos de datos, por ejemplo: string, entero, flotante, doble, largo, etc. El tipo de devolución de este método es un número entero. Devuelve un valor positivo si la array es lexicográficamente mayor, negativo si es menor y 0 si es igual.
Excepciones: por lo general, arroja NullPointerException y ClassCastException, y ambas excepciones también tienen diferentes medios.
- NullPointerException : NullPointerException es una excepción de tiempo de ejecución que se refiere a nulo y ocurre cuando se accede a una variable que no apunta a ningún objeto.
- ClassCastException: esta excepción ocurre cuando intentamos convertir un objeto de clase en otro objeto de tipo de clase.
Si queremos invocar este método, primero importe la clase «Arrays» de JavaJava. util paquetes simplemente agregando el comando «importar java.util.Arrays». luego invoque el método por «Arrays» siga «.compare(parameter1,parameter2);» con esto puede invocar el método compare() fácilmente.
Ejemplo 1: Tomemos un ejemplo, primero importe java.util.Arrays, cree una clase pública llamada CompareExample, luego inicialice dos arrays de enteros con elementos, compárelos usando el método compare() y finalmente imprima el resultado del método de comparación.
Java
import java.util.Arrays; public class CompareExample{ public static void main(String[] args) { //Initialized two integer array int[] array1 ={6, 7, 8, 11, 18, 8, 2, 5}; int[] array2 ={3, 5, 9, 13, 28, 6, 8, 9}; //compare both integer array using compare method and finally print result System.out.println("Result is "+ Arrays.compare(array1,array2)); } }
Result is 1
Por lo tanto, la salida deseada es 1 porque array1 es lexicográficamente mayor que array2.
Ejemplo 2: tomemos otro ejemplo, en este ejemplo, tomaremos una array de diferentes tipos de datos, y eso es flotante, y haremos lo mismo que hicimos en el ejemplo mencionado anteriormente, primero importe la clase, cree una nueva clase llamado «CompareExample», luego inicialice dos arrays de tipo flotante con elementos, luego compárelos usando el método de comparación de la clase de array y finalmente imprima el resultado que obtuvimos.
Java
// import Arrays class from java.util package import java.util.Arrays; public class CompareExample{ public static void main(String[] args) { // Initialize two float array with element float[] floatArray1={5.12f, 8.3f, 9.17f, 2.5f, 8.8f, 5.17f, 4.2f, 7.37f}; float[] floatArray2={7.12f, 9.3f, 6.17f, 7.5f, 5.8f, 7.17f, 3.2f, 6.37f}; // compare two float array using compare method and finally print result System.out.println("Result is " + Arrays.compare(floatArray1, floatArray2)); } }
Result is -1
El resultado es -1 en la salida porque floatArray1 es lexicográficamente menor que floatArray2.
Ejemplo 3: Pongamos un ejemplo. En esto, inicializaremos una array con los mismos números y tamaño. Luego compare array1 y array2 y finalmente imprima el resultado que obtuvimos del método de comparación.
Java
import java.util.Arrays; public class CompareExample { public static void main(String[] args) { // Initialize two integer array with same elements int[] array1 = { 1, 2, 3, 4 }; int[] array2 = { 1, 2, 3, 4 }; // compare array1 and array2 using compare() method // and print the result System.out.println( "Result is " + Arrays.compare(array1, array2)); } }
Result is 0
La salida deseada es 0 porque nos dan dos arrays de enteros con los mismos números y tamaño.
En este artículo, hemos aprendido a usar el método compare(). Si array1 es lexicográficamente mayor que array2, devolverá un valor positivo (-ve). Si array1 es lexicográficamente menor que array2, devolverá un valor negativo (-ve). Si ambas arrays son lexicográficamente iguales o nulas, devolverá 0.
Publicación traducida automáticamente
Artículo escrito por goutamverma84009 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA