JavaRush /Blog Java /Random-FR /Pause café #136. Triez un tableau par ordre croissant ou ...

Pause café #136. Triez un tableau par ordre croissant ou décroissant à l'aide de Arrays.sort(). Quelle est la différence entre les interfaces List et Set ?

Publié dans le groupe Random-FR

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. Pause café #136.  Triez un tableau par ordre croissant ou décroissant à l'aide de Arrays.sort().  Quelle est la différence entre les interfaces List et Set ?  - 1En 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 + ", ");
            // 1, 2, 5, 8, 10,
        }
    }
}
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 + ", ");
            // 10, 8, 5, 2, 1,
        }
    }
}
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();

                            }

            }

}
Commentaires
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION