jeudi 9 août 2012

Trier des ArrayList par ordre alphabetique

Java

Reçament j'ai du implémenter un mécanisme de recherche prédictive, après les accès en base j'avais sois une liste d'objet sois une liste de String, il fallait ensuite les ordonner pour l'affichage.

Les liste sont ici des ArrayList (je ne sais pas si Collections.sort()) fonctionne sur les LinkedList et autre.

Dans le cas des Objet on les ordonne en fonction d'un champ.

Ranger une liste d'objet par ordre alphabetique 


Collections.sort(
  arrayListObjets, 
  new Comparator<monObjet>() 
  {
    public int compare(MonObjet o1, MonObjet o2) 
    {
      return o1.Name.compareTo(o2.Name);
    }
  }
);


Range l'arraylist arrayListObjets par ordre alphabetique en fonction de l'attribut Name des objects MonObjet.
Ici l'ArrayList est bien sur arrayListObjets.

Faire ceci si on ne veut pas que le classement soit case sensitive (ne prenne pas en compte les majuscule).

    return lhs.Name.toLowerCase().compareTo(rhs.Name.toLowerCase());


Ranger une List de String (ArrayList) par ordre alphabetique


    Collections.sort(theList);

Si on veut que ça ne soit pas case sensitive.

    Collections.sort(theList, String.CASE_INSENSITIVE_ORDER);

Ici l'ArrayList est bien sur theList.

Aucun commentaire:

Enregistrer un commentaire