Maison >Java >javaDidacticiel >Comment trier un tableau dans l'ordre inverse en Java ?

Comment trier un tableau dans l'ordre inverse en Java ?

DDD
DDDoriginal
2024-11-03 01:50:03949parcourir

How to Sort an Array in Reverse Order in Java?

Tri d'un tableau à l'envers

De nombreux langages de programmation offrent des fonctions pratiques pour trier les tableaux par ordre croissant. Cependant, la question se pose : existe-t-il une approche similaire pour trier les tableaux par ordre décroissant ?

Classe Arrays de Java

En Java, la classe Arrays propose la fonction sort() méthode de tri des tableaux. Cependant, cette méthode ne prend pas directement en charge l’ordre décroissant. Une option consiste à utiliser un comparateur pour définir l'ordre inverse des éléments.

Utiliser un comparateur

Arrays.sort() vous permet de spécifier un comparateur pour déterminer le ordre de tri. La classe Collections fournit la méthode reverseOrder() pour créer un Comparator qui inverse l'ordre naturel.

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

Cette approche fonctionne pour trier des tableaux d'objets, tels que des tableaux d'entiers. Cependant, cela échoue pour les tableaux primitifs, tels que les tableaux int.

Alternative pour les tableaux primitifs

Pour trier les tableaux primitifs par ordre décroissant, il faut d'abord les trier par ordre croissant. trier à l'aide de Arrays.sort() puis inverser manuellement les éléments du tableau.

Arrays.sort(a);
for (int i = 0, j = a.length - 1; i < j; i++, j--) {
    int temp = a[i];
    a[i] = a[j];
    a[j] = temp;
}

En employant ces techniques, il est possible de trier un tableau par ordre décroissant, qu'il contienne des objets ou des primitives.

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