Bonjour,

j'ai un peu de mal à comprendre le fonctionnement du return dans cette implémentation.


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
 public void addSort (String toAdd) {
        
          Node aPlacer = new Node ();
          aPlacer.element = toAdd;
          
          if (first==null) {first=aPlacer;return;}                              
         
          if (toAdd.compareTo(first.element)<0){
              aPlacer.next = first;
              first = aPlacer;return;}
          
              
          if (toAdd.compareTo(first.element)>=0){
              Node current=new Node ();
              current=first;
              try {
              while (toAdd.compareTo(current.next.element)>=0){
                  current=current.next;}
              
              aPlacer.next =current.next;                                                     
              current.next = aPlacer;return;

          }catch (NullPointerException e) {current.next=aPlacer;}                }
    }
Malgré que l'effet est celui désiré, je me demande ce
que fait le return exactement ?
Il stop l'exécution du code dans le if mais,
on dirait plutôt que dès qu'un return est rencontré, il arrête l'exécution de toute la méthode addSort et pas juste la boucle if ciblée !?!

Merci