Pour ranger des séries de données (comme une liste d'utilisateurs) il existe des structures offrant plus de possibilités que les tableaux (array) déjà étudiés: ce sont les listes.
Contrairement aux tableaux, dont la taille est fixée , le nombre d'éléments dans une liste peut être modifié à tout moment en ajoutant, enlevant, insérant des éléments.
Les éléments peuvent également être triés ou mélangés, ou recherchés dans la liste, à l'aide de méthodes standard.
Le plus polyvalent des types liste sous Java est le type ArrayList.
ArrayList<String> listeChaines=new ArrayList<String>();permet d'obtenir une instance d'ArrayList appelée listeChaines, destinée à contenir des éléments de type String.
ArrayList<Double> listeNombres=new ArrayList<Double>();permet d'obtenir une instance d'ArrayList appelée listeNombres, destinée à contenir des instances du type Double. On l'utilisera pour contenir des nombres réels.
De manière générale on indique entre < > la classe (class) des éléments que va contenir l'ArrayList.
Ce nom étant un nom de classe, il commencera forcément par une majuscule.
Le type Double utilisé dans l'exemple ci-dessus, est le type objet "enveloppant" le type primitif double , il est donc destiné à contenir une valeur numérique réelle.