Loading ...

Google Guava: ordinare dati con Ordering

Google Guava: ordinare dati con Ordering

Google Guava è una libreria per Java con diverse utilità.

Oggi vediamo come usare la ordinare i dati con la classe Ordering!

Se usate Maven aggiungete questa dipendenza:

        <!-- https://mvnrepository.com/artifact/com.google.guava/guava -->
        <dependency>
            <groupId>com.google.guava</groupId>
            <artifactId>guava</artifactId>
            <version>27.0-jre</version>
        </dependency>

Per il nostro esempio creeremo un ArrayList da dati random.

Poi faremo l'ordinamento naturale e stamperemo alcuni dati.

Infine faremo l'ordinamento inverso e stamperemo la lista.

Tutto questo con poco codice:

import com.google.common.collect.Ordering;

import java.util.ArrayList;
import java.util.Collections;

public class Main {

    public static void main(String[] args) {
        ArrayList<Integer> lista = new ArrayList<>();
        for (int i = 0; i < 100; i++) {
            int num = (int) (Math.random() * i + 1);
            System.out.println(num);
            lista.add(num);
        }
        Ordering ordering = Ordering.natural();
        Collections.sort(lista, ordering);
        System.out.println("Lista ordinata: " + ordering.isOrdered(lista));
        System.out.println("Minimo: " + ordering.min(lista));
        System.out.println("Massimo: " + ordering.max(lista));

        Collections.sort(lista, ordering.reverse());
        System.out.println("Ordine inverso: " + lista);
    }

}

Enjoy!