Tri d un tableau en java

fred -  
 danimo -
Bonjour,

Je souhaiterais trier un tableau en java mais je ne sais pas comment je dois procéder .
Je dois recuperer une chaine contenant des numéros, je procéde de la facon suivante :

s_erreurbin = "17,22,23,5,20";
tab = s_erreurbin.split(",");

Pour effectuer le tri comment je dois faire ? il doit bien y avoir une fonction toute simple ...
Merci de votre réponse
Configuration: Windows 2000
Internet Explorer 6.0

4 réponses

  1. ray-J
     
    Salut il te faut seulement recuperer ta chaine dans un tableau de chaine de caractere par exemple et utiliser la methode statique de la classe Array comme ce ci Array.sort(tab); je m'en souviens pas trop bien mais je crois que c'est cela.
    Bonne chance!
    -1
  2. lati
     
    bsr j'ai le méme problem de tri d'un tableau
    -1
  3. danimo
     
    Salut,

    String s_erreurbin = "17,22,23,5,20";

    /* il faut enregistrer les valeurs numeriques dans un tableau d'int,
    * donc ne pas utiliser split, mais StringTokenizer
    * comment trier:
    * (import java.util.Arrays;) // attention Arrays pas Array
    * Arrays.sort(tabInt);
    */
    // création du tableau
    int nbvirg = 0;
    char car = ' ';
    int i = 0;
    for (i = 0; i < s_erreurbin.length(); i++)
    {
    car = s_erreurbin.charAt(i);
    if (car == ',') nbvirg++;
    }
    int tabInt[] = new int[nbvirg +1]; // nous avons ainsi la taille réelle de tabInt

    StringTokenizer tok;

    tok = new StringTokenizer(s_erreurbin, ",");
    while (tok.hasMoreTokens())
    {
    for(i = 0; i < nbvirg +1; i++)
    tabInt[i] = Integer.parseInt(tok.nextToken());
    }
    // le tri
    Arrays.sort(tabInt);

    // controle:
    for (i = 0; i < nbvirg +1; i++)
    {
    System.out.println(">>>>>> " + i + " " + tabInt[i]);
    }

    Cordialement,

    Dan
    -1