Maison  >  Article  >  Java  >  Comment trier un tableau par ordre décroissant en Java ?

Comment trier un tableau par ordre décroissant en Java ?

DDD
DDDoriginal
2024-11-02 15:19:02159parcourir

How to Sort an Array in Descending Order in Java?

Tri d'un tableau par ordre décroissant en Java

En Java, la classe Arrays fournit une méthode de sort pour le tri ascendant trier par ordre un tableau. Cependant, s'il est nécessaire de trier un tableau par ordre décroissant, la méthode "FACILE" consiste à utiliser la méthode sort en conjonction avec la méthode Collections.reverseOrder() comparateur.

Le code suivant illustre cette approche :

<code class="java">Integer[] numbers = {5, 2, 8, 3, 1};

Arrays.sort(numbers, Collections.reverseOrder());

System.out.println(Arrays.toString(numbers)); // Output: [8, 5, 3, 2, 1]</code>

Ici, Collections.reverseOrder() fournit un comparateur qui inverse l'ordre naturel des éléments, trier efficacement le tableau par ordre décroissant. Cette méthode est idéale pour trier des tableaux d'objets.

Pour les tableaux primitifs (par exemple, les tableaux int), la méthode Arrays.sort() seule ne peut pas être utilisée directement pour le tri par ordre décroissant. Tenter d'utiliser sort avec Collections.reverseOrder() sur un tableau primitif entraînera une erreur.

La solution pour les tableaux primitifs est de d'abord trier le tableau par ordre croissant en utilisant la méthode sort, et puis inverser le tableau en place à l'aide de la méthode reverse.

Ici est un exemple :

<code class="java">int[] numbers = {5, 2, 8, 3, 1};

Arrays.sort(numbers);
ArrayUtils.reverse(numbers);

System.out.println(Arrays.toString(numbers)); // Output: [8, 5, 3, 2, 1]</code>

Cette approche est applicable aux tableaux primitifs unidimensionnels et bidimensionnels.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn