Bonjour,
J'aurais besoin de votre aide car je me posais une question sur le fonctionnement d'un bout de code que j'ai eu lors d'un partiel de JAVA cette année, n'ayant pas eut la correction.
Sachant que for (String a : args) {} indique que l'on traite un par un tous les arguments suivant "toto" "titi" "toto" "tata" "titi"
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 import java.util.* public class Find ( public statis void main(String[] args) { Set<String> s = new HashSet<String>(); for (String a : args){ if (!s.add(a)) System.out.println(a); } System.out.println(s.size() + "???" + s); } }
Qu'affiche ce programme ?
C'est surtout la ligne !s.add(a) que j'ai du mal à comprendre
Est-ce qu'il fait System.out.println(a) lorsqu'il a réussi à l'insérer ou lorsqu'il n'y a plus d'insertion à faire ?
Et qu'affiche-t-il pour le 's' dans System.out.printl(s.size() + "???" + s);
Merci d'avance pour votre aide
Partager