Métodos java.util.Arrays Java

java_base_web

Hola a todos, hoy os mostrare los métodos que podemos aplicables para arrays.

Para acceder a estos métodos, debemos importar el paquete java.util.Arrays antes de la clase.

Te indicamos el nombre, su descripción, parámetros y que devuelve.

Para ejecutar estos métodos, lo haremos de la siguiente manera Arrays.nombre_metodo(parámetro);

Estos son los métodos:

NombreDescripciónParámetrosDato devuelto
binarySearchBusca un valor que le pasamos por parámetro, devuelve su posición. Debe estar ordenado.Un array y un valor. Los dos del mismo tipo. Estos pueden ser un byte, char, double, float, int, long, short u objecto.int
copyOfCopia un array y lo devuelve en un nuevo array.Un array y la longitud. Si se pasa del tamaño del array original, rellena los con ceros las posiciones sobrantes. Estos pueden ser un byte, char, double, float, int, long, short u objecto.array del mismo tipo que se introduce
copyOfRangeCopia un array y lo devuelve en un nuevo array. Le indicamos la posición de origen y de destino.Un array, posición origen y destino. Estos pueden ser un byte, char, double, float, int, long, short u objecto.array del mismo tipo que se introduce.
equalsIndica si dos arrays son iguales.Dos arrays del mismo tipo.true o false
fillRellena un array con un valor que le indiquemos como parámetro.Un array y el valor a rellenar. Estos pueden ser un byte, char, double, float, int, long, short u objecto.No devuelve nada
sortOrdena el array.Un array.
Estos pueden ser un byte, char, double, float, int, long, short u objecto.
No devuelve nada
toStringMuestra el contenido del array pasado como parámetrosUn array. Estos pueden ser un byte, char, double, float, int, long, short u objecto.Devuelve una cadena con el contenido del array.
import java.util.Arrays;
public class PruebaApp {

    public static void main(String[] args) {
        int num[]={8, 10, 15, 20, 21, 25, 30, 32, 40, 41};
        
        //Devuelve un 4
        System.out.println("Metodo binarySearch: "+Arrays.binarySearch(num, 21));
        //Copia el array num hasta la quinta posicion(este ultimo no incluido), devuelve un array
        int num2[]=Arrays.copyOf(num, 4);
        
        System.out.println("Metodo copyOf ");
        //Lo recorremos para ver que lo realiza correctamente
        muestraArray(num2);
        
        //Copia el array num de la tercera hasta la octava posicion, devuelve un array
        int num3[]=Arrays.copyOfRange(num, 2, 6);
        System.out.println("Metodo copyOfRange");
        muestraArray(num3);
        
        //Compara si num1 y num2 no son iguales
        System.out.println("Metodo equals: "+Arrays.equals(num, num2));
       
        System.out.println("Metodo fill");
        Arrays.fill(num3, 5);
        muestraArray(num3);
        
        System.out.println("Metodo toString");
        System.out.println(Arrays.toString(num));
    }
    
    public static void muestraArray(int num[]){
    
        for (int i=0;i<num.length;i++){
            System.out.println(num[i]);
        }
        
    }
}

Espero que os sea de ayuda. Si tenéis dudas, preguntad. Estamos para ayudarte.

Etiquetas

7 comments

  1. que verga pasa con esa linea?? no entiendo nada :v

  2. Ya esta solucionado.

  3. Buenas tardes

    Una pregunta los metodos de arrays list , se pueden utilizar para arrays multidimensionales

  4. Me temo que no

  5. Buenas de nuevo, estoy intentado usar el metodo de busqueda binaria
    Arrays.binarySearch este se le tienen que dar dos parametros el array y el numero y te dice la posicion, mi pregunta real como podriamos realizar una busqueda para un array de cadenas,
    tengo una idea para realizar una especie de algoritmo, pero seguro que existe algo ya echo.

  6. En nuestra biblioteca de discoduroderoer tenemo un metodo que se llama busqueda binaria, es para numeros pero lo puedes adaptar para lo que tu quieres

  7. Hola que tal no me quedo claro el metodo copyofrange, por que ahi dice que es de la tercera a la octava y tiene int num3[]=Arrays.copyOfRange(num, 2, 6);, seguro es a la octava? soy nuevo gracias

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *