[Java8] Utilisez stream pour trier les tableaux de type int dans l'ordre décroissant

Aperçu

--Mémo de l'endroit où vous vous êtes fait prendre en étudiant

Exemple de programme

--Problèmes tels que "Utiliser un tableau de type int pour trier les nombres suivants par ordre décroissant et en sortie"

import java.util.Arrays;
import java.util.Comparator;

public class Main {
    public static void main(String[] args) throws Exception {
        
        //contribution
        int[] numArray = {4, 3, 2, 5, 6, 7, 3, 2, 1, 9, 7, 8, 10, 6, 4, 3, 5, 8, 9};

        Arrays.stream(numArray)
                .boxed()
                .sorted(Comparator.reverseOrder())
                .forEach(i -> System.out.print(i + " "));
    }
}

Résultat de sortie

10 9 9 8 8 7 7 6 6 5 5 4 4 3 3 3 2 2 1 

En combinant filtre et distinct, vous pouvez affiner et supprimer les doublons.

import java.util.Arrays;
import java.util.Comparator;

public class Main {
    public static void main(String[] args) throws Exception {
        
        //contribution
        int[] numArray = {4, 3, 2, 5, 6, 7, 3, 2, 1, 9, 7, 8, 10, 6, 4, 3, 5, 8, 9};

        Arrays.stream(numArray)
                .boxed()
                .distinct()
                .filter(x -> x >= 5)
                .sorted(Comparator.reverseOrder())
                .forEach(i -> System.out.print(i + " "));
    }
}

Résultat de sortie

10 9 8 7 6 5 

Si vous réécrivez le tableau lui-même, il ressemble à ceci

import java.util.Arrays;
import java.util.Comparator;

public class Main {
    public static void main(String[] args) throws Exception {
        
        //contribution
        int[] numArray = {4, 3, 2, 5, 6, 7, 3, 2, 1, 9, 7, 8, 10, 6, 4, 3, 5, 8, 9};
                
        numArray = Arrays.stream(numArray)
            .boxed()
            .distinct()
            .filter(x -> x >= 5)
            .sorted(Comparator.reverseOrder())
            .mapToInt(Integer::intValue)
            .toArray();
        System.out.println(Arrays.toString(numArray));
    }
}

Résultat de sortie

[10, 9, 8, 7, 6, 5]

référence

Recommended Posts

[Java8] Utilisez stream pour trier les tableaux de type int dans l'ordre décroissant
Trier la liste par ordre décroissant en Java et générer une nouvelle liste de manière non destructive
Mapper sans utiliser de tableau en java
Trier par plusieurs conditions à l'aide de Java Stream
Comment trier par ordre croissant / décroissant avec SQLite
Trier les valeurs de la carte par ordre croissant des clés dans Java TreeMap
[Java] Conversion de type de liste / type de tableau
Essayez d'utiliser RocksDB avec Java
[Neta] Sleep Sort en Java
[Java, stream] Trier la liste d'objets en japonais par nom de propriété
Essayez le type fonctionnel en Java! ①
API Java Stream en 5 minutes
Tri par ordre croissant en Java (Tri à bulles: algorithme de méthode d'échange simple)
Générer un flux à partir d'un tableau de types primitifs en Java
Tri des bulles à l'aide de ArrayList (JAVA)
Tri des données Décroissant, croissant / Rails
Chiffrer à l'aide du chiffrement RSA en Java
J'ai essayé d'utiliser l'API Java8 Stream
Connexion HTTPS utilisant tls1.2 dans Java 6
J'ai essayé d'utiliser JWT en Java
Liste de conversion mutuelle de tableau / liste / flux Java
Utilisez-vous Stream en Java?
[Java] Type Express Enum sans utiliser le type Enum (énumération)
Ordre de description des membres dans la convention de codage Java
J'ai essayé d'utiliser l'API Elasticsearch en Java
Lors de la recherche de plusieurs dans un tableau Java
Concernant la comparaison d'équivalence de type de chaîne en Java
Traitement des données à l'aide de l'API de flux de Java 8
[Explication facile à comprendre! ] Conversion de type de type de référence en Java
Remarques sur les opérateurs utilisant Java ~ Type chaîne ~
Organisation des notes dans la tête (Java-Arrangement)
Lire Felica en utilisant RC-S380 (PaSoRi) en Java
Différence entre int et Integer en Java
Implémentation d'un algorithme de recherche / tri de base en Java
[Java] Comment convertir un élément d'un tableau de type String en type Int