Encuentre el número máximo en un array en Java

Rupam Yadav 12 octubre 2023
  1. Encuentre el número máximo en un array utilizando la forma iterativa
  2. Encuentre el número máximo en un array usando Stream
  3. Encuentre el número máximo en un array usando Arrays.sort()
Encuentre el número máximo en un array en Java

un array contiene datos de un tipo similar. Si bien ya puede leer todos los elementos y realizar varias operaciones en ellos, este artículo le mostrará cómo encontrar el valor máximo en un array en Java.

Encuentre el número máximo en un array utilizando la forma iterativa

Este método es la forma tradicional de encontrar el número máximo de un array. Incluye un iterador que se utiliza para pasar por todos los elementos del array. A continuación, tenemos un array de enteros, intArray; primero, creamos una variable maxNum y la inicializamos con el primer elemento de intArray.

Creamos un bucle for mejorado que toma el array y devuelve cada elemento en cada iteración. Luego, verificamos cada elemento con maxNum que tiene 24, y una vez que encuentra un número mayor que 24, reemplaza 24 con ese número en maxNum. Reemplazará el número en maxNum hasta que llegue al final del array; de lo contrario, no encontró un número mayor que el valor existente en maxNum.

public class ArrayMax {
  public static void main(String[] args) {
    int[] intArray = {24, 2, 0, 34, 12, 110, 2};

    int maxNum = intArray[0];

    for (int j : intArray) {
      if (j > maxNum)
        maxNum = j;
    }

    System.out.println("Maximum number = " + maxNum);
  }
}

Producción :

Maximum number = 110

Encuentre el número máximo en un array usando Stream

Java 8 introdujo la API Stream que proporciona varios métodos útiles. Uno de ellos es el método Arrays.stream() que toma un array y devuelve una secuencia secuencial. En nuestro caso, tenemos un array del tipo int, y cuando lo pasamos en el flujo, devuelve un IntStream.

La función IntStream viene con un método max() que ayuda a encontrar el valor máximo en la secuencia. Devuelve un OptionalInt que describe que la secuencia también puede tener valores int vacíos.

Por último, como queremos que el número máximo sea un int, usaremos el método optionalInt.getAsInt() que devuelve el resultado como un tipo int.

import java.util.Arrays;
import java.util.OptionalInt;
import java.util.stream.IntStream;

public class ArrayMax {
  public static void main(String[] args) {
    int[] intArray = {24, 2, 0, 34, 12, 11, 2};

    IntStream intStream = Arrays.stream(intArray);
    OptionalInt optionalInt = intStream.max();
    int maxAsInt = optionalInt.getAsInt();

    System.out.println("Maximum number = " + maxAsInt);
  }
}

Producción :

Maximum number = 34

Encuentre el número máximo en un array usando Arrays.sort()

La última técnica de esta lista utiliza el método de clasificación que organiza el array en orden ascendente. Para ordenar el array, usamos la función Arrays.sort() y pasamos intArray como argumento.

Para ver cómo se verá el array después de la operación de clasificación, la imprimimos. Ahora, como el array está ordenada y el mayor número de todos está en la posición más a la izquierda, obtenemos su posición usando la función intArray.length - 1, que está en la última posición del array.

import java.util.Arrays;

public class ArrayMax {
  public static void main(String[] args) {
    int[] intArray = {24, 340, 0, 34, 12, 10, 20};

    Arrays.sort(intArray);

    System.out.println("intArray after sorting: " + Arrays.toString(intArray));

    int maxNum = intArray[intArray.length - 1];
    System.out.println("Maximum number = " + maxNum);
  }
}

Producción :

intArray after sorting: [0, 10, 12, 20, 24, 34, 340]
Maximum number = 340
Rupam Yadav avatar Rupam Yadav avatar

Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.

LinkedIn

Artículo relacionado - Java Array