Triez un tableau par ordre croissant ou décroissant à l'aide de Arrays.sort()
Source :
FreeCodeCamp Avec cet article, vous apprendrez à trier un tableau par ordre croissant ou décroissant en Java.
En Java, nous utilisons des tableaux pour stocker un ensemble de variables (avec le même type de données) dans une seule variable. Mais parfois, les valeurs stockées dans le tableau apparaissent dans un ordre aléatoire. Grâce à la classe
Arrays en Java, nous disposons de plusieurs façons de manipuler les tableaux, notamment en les triant. L'une des méthodes que nous utiliserons à partir de la classe
Arrays est la méthode
sort() , qui trie le tableau par ordre croissant. Pour trier un tableau par ordre décroissant, utilisez la méthode
reverseOrder() de la classe
Collections en Java.
Comment trier un tableau par ordre croissant en Java en utilisant Arrays.sort()
Voici un exemple de la façon dont nous pouvons utiliser la méthode
sort() pour trier un tableau par ordre croissant.
import java.util.Arrays;
class ArraySort {
public static void main(String[] args) {
int[] arr = { 5, 2, 1, 8, 10 };
Arrays.sort(arr);
for (int values : arr) {
System.out.print(values + ", ");
}
}
}
La première chose que nous avons faite dans l'exemple ci-dessus a été d'importer la classe
Arrays :
import java.util.Arrays; . Cela nous donne accès à toutes les méthodes de la classe
Arrays . Ensuite, nous avons créé un tableau avec des nombres dans un ordre aléatoire :
int[] arr = { 5, 2, 1, 8, 10 }; . Pour trier ce tableau par ordre croissant, nous avons passé le tableau en paramètre à la méthode
sort() :
Arrays.sort(arr); . Notez que la classe
Arrays est écrite en premier avant d'accéder à la méthode
sort() en utilisant la notation par points. Enfin, nous avons créé une boucle et imprimé le tableau sur la console. Le résultat est un tableau trié :
1, 2, 5, 8, 10 . Parlons maintenant du tri du tableau par ordre décroissant.
Comment trier un tableau par ordre décroissant en Java en utilisant Collections.reverseOrder()
Pour trier un tableau par ordre décroissant, vous devez utiliser
reverseOrder() , accessible depuis la classe
Collections . Nous utiliserons toujours
Arrays.sort(); , mais dans cet exemple, il faudra deux paramètres - un tableau à trier et
Collections.reverseOrder() .
import java.util.Arrays;
import java.util.Collections;
class ArraySort {
public static void main(String[] args) {
Integer[] arr = { 5, 2, 1, 8, 10 };
Arrays.sort(arr, Collections.reverseOrder());
for (int values : arr) {
System.out.print(values + ", ");
}
}
}
La première chose que nous avons faite a été d'importer
les classes Arrays et
Collections car nous utiliserons les méthodes fournies par ces classes. Nous avons ensuite créé un tableau de nombres dans un ordre aléatoire :
Integer[] arr = { 5, 2, 1, 8, 10 } ; . Comme vous pouvez le voir, nous avons utilisé
Integer[] au lieu de
int[] comme dans l'exemple précédent. Sinon, une erreur se produira. Pour trier le tableau par ordre décroissant, nous avons fait ceci :
Arrays.sort(arr, Collections.reverseOrder()); . Le premier paramètre est un tableau
arr qui sera trié par ordre croissant. Le deuxième paramètre,
Collections.reverseOrder() , inversera alors l'ordre du tableau trié afin qu'il soit par ordre décroissant. Une fois bouclé et imprimé, le tableau ressemblera à ceci :
10, 8, 5, 2, 1 .
Conclusion
Dans cet article, nous avons discuté du tri des tableaux en Java et de la manière dont ils peuvent être triés par ordre croissant ou décroissant. Pour ce faire, nous pouvons utiliser la méthode
sort() , accessible depuis la classe
Arrays . La méthode
sort() prend un tableau à trier comme paramètre. Pour trier le tableau par ordre décroissant, nous avons utilisé
la méthode reverseOrder() fournie par la classe Collections. Il est passé comme deuxième paramètre à la méthode
sort() afin que le tableau trié puisse être réorganisé par ordre décroissant.
Collection Java. Quelle est la différence entre les interfaces List et Set ?
Source :
Rrtutors List et Set sont des interfaces Java pour étendre l' interface
Collection . Dans cet article, nous examinerons les principales différences entre les deux, ainsi que la manière dont elles peuvent être utilisées.
Différences entre les interfaces Set et List en Java
Définissons les principales différences entre
les interfaces List et
Set en fonction des paramètres clés suivants :
Mise en œuvre
List implémente
ArrayLists , tandis que
HashSet implémente
Set .
Indexage
Vous pouvez utiliser
ListIterator pour avancer et reculer dans
un List , mais pas dans un Set . Utilisez plutôt Iterator (qui fonctionne à la fois avec
List et
Set ).
Commande
L’ interface
Set ne prend en charge aucun ordre d’ensemble particulier. Une collection de type
Set est déjà triée selon sa propre règle et ne peut pas être triée comme ça.
La liste est une liste ordonnée. Les objets sont stockés dans l'ordre dans lequel ils ont été ajoutés à la liste. Les éléments de la liste sont accessibles par index.
Objet nul
List n'a aucune restriction et prend en charge l'ajout de valeurs Null, tandis que
Set autorise au plus une valeur Null.
Doublons
La liste peut contenir des doublons, mais pas
Set . Set n'autorise pas les éléments en double car tous ses éléments doivent être uniques. Si vous insérez un élément en double dans
Set , la valeur existante sera écrasée.
Quand devez-vous utiliser List et Set ?
Set est le meilleur choix lorsque vous avez simplement besoin de stocker des valeurs uniques, car c'est pour cela qu'il est conçu. Mais si vous souhaitez conserver l'ordre d'insertion malgré la duplication,
List est le meilleur choix .
Ensemble d'exemples
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
public class ListExample {
public static void main(String[] args) {
List<String> al = new ArrayList<String>();
al.add("Rohit");
al.add("Panjab");
al.add("Kamir");
System.out.println("My ArrayList Items: ");
System.out.print(al);
List<String> ll = new LinkedList<String>();
ll.add("Shobit");
ll.add("Raul");
ll.add("Ketel");
System.out.println("\n My LinkedList Items: ");
System.out.print(ll);
}
}
Exemple de liste
import java.util.HashSet;
import java.util.Set;
import java.util.TreeSet;
public class SetExample {
public static void main(String[] args) {
int myList[] = {60, 70, 80, 40 };
Set<Integer> dispSet = new HashSet<Integer>();
try{
for(int i = 0; i<4; i++){
dispSet.add(myList[i]);
}
System.out.println(dispSet);
TreeSet<Integer> treeset = new TreeSet<Integer>(dispSet);
System.out.println("Sorting in Asceding order:");
System.out.println(treeset);
}
catch(Exception e){
e.printStackTrace();
}
}
}
GO TO FULL VERSION