Bonjour, Un petit problem sans doute logique, mais pas pour un débutant!!!

Voila, je créé un String représentant un opération simple ("1+2+3+4+5+6+7+8+9") je place les chiffre dans une 1ere ArrayListe et les opérateur dans une 2ème... jusque là tout marche.
Mais lorsque j'affiche indice par indice le contenue de mes ArrayList celle-ci sont à l'envers en indice 0 j'ai 9 ; en 1 j'ai 8 ; ... et vis et versa !!!
Pour moi c'est incompréhensible mais c'est sans doute pas étonnant vu mon niveau!!!
Quelqu'un pourrait-il me donner l'explication???

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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
import java.util.*;
 
public class StringTokenizerTest {
 
    public static void main(String[] args) {
 
      try {
 
        ArrayList<String> listeChiffre = new ArrayList<String>();
        ArrayList<String> listeOperateur = new ArrayList<String>();
 
        //Scanner readK = new Scanner(System.in);
        //System.out.println("Entrez le calcul : ");
        //String calcul = readK.next();
 
        String calcul = "1+2+3+4+5+6+7+8+9";
 
        StringTokenizer st = new StringTokenizer( calcul ,"+");
 
        while (st.hasMoreTokens()) {
        	int i = 0;
			listeChiffre.add(i++,st.nextToken());
        }
 
        System.out.println("Taille de la liste des chiffres : " + listeChiffre.size());
        int i = 0;
    	for(String laCase : listeChiffre) System.out.println("En indice "+ i + " il y a la valeur : " + listeChiffre.get(i++));
    	//for(int j=0 ; j<liste.size() ; j++) System.out.println("En indice "+ j + " il y a la valeur : " + liste.get(j));
 
 
    	StringTokenizer st1 = new StringTokenizer( calcul ,"0123456789,.");
         System.out.println(calcul);
        while (st1.hasMoreTokens()) {
        	int j = 0;
			listeOperateur.add(j++,st1.nextToken());
        }
 
        System.out.println("Taille de la liste des operateurs : " + listeOperateur.size());
  		int j = 0;
    	for(String laCase : listeOperateur) System.out.println("En indice "+ j + " il y a la valeur : " + listeOperateur.get(j++));
      }
      catch (Throwable t)
      {
      System.out.println("Erreur : " + t.getMessage());
      }
 
 
    }
}
Merci d'avance pour toute réponse, je n'ai rien trouvé dans la FAQ ou sur les forums.