Utilisation attributs d'objets d'1 ArrayList
Bonjour.
Dans une classe Sejour, je fais une liste des Sejour.
Je parviens à afficher cette liste avec la méthode
Sejour.afficherLesSejours();
mais comment faire pour utiliser ou afficher les attribut de chaque Sejour de l'ArrayList ?
Merci.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
import java.util.*;
public class Sejour
{ // numero vol arrive unique, donc peut servir de cle pour sejour
private String numVolAr, numVolDep, codeA, numParking;
private static Horaire debut;
private static Horaire fin;
private static TrancheHoraire occupation;
private static List lesSejours = new ArrayList();
public Sejour()
{}
...
public static void afficherLesSejours()
{
Iterator i = lesSejours.iterator();
while (i.hasNext())
{
System.out.println(i.next());
}
} |
VolAtterrit et VolDecolle
Salut,
Si tu fais du java au moins en version 5, Tu devrais d'utiliser des enum pour les types de vol. Ca te permet de typer tes objets types de vol.
L'intérêt des enums n'est plus à prouver :
- avoir un type borné à la compilation, donc moins d'erreurs possibles: avec des entiers tu peux mettre n'importe quel entier, avec une enum c'est une enum ou une enum.
- réunir les types de vols dans un ensemble logique : l'enum.
Tu sais ou elles sont, elles ne sont pas mélangées avec les autres champs.
- utiliser les fonctionnalités de la classe enum (ex: lister les types de vol)
- Enfin le plus important : faire de l'objet. A savoir définir des méthodes ou attributs à l'enum. La, tu en as pas besoin, mais ca arrive assez vite d'en avoir besoin :aie:
En outre, tu pourrais aussi réaliser ton traitement afficherVol() qu'avec une seule méthode pour afficher les vols par type avec l'enum en paramètre.
Le paramètre est assez parlant de lui même. Cela te permettra de choisir dynamiquement le paramètre d'appel à la méthode (sinon il faudrait aussi faire des if coté client) et d'éviter la multiplication de méthodes afficherVol.
Code:
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
|
public class Vol{
public enum TypeVol{
VOL_ATTERIT, VOL_DECOLAGE, VOL_ATTERRISSAGE;
}
...
private TypeVol typeVol;
....
public TypeVol getTypeVol(){
return typeVol;
}
....
}
// Dans ta classe avec le static void main
...
public void afficherVol(TypeVol typeVol) {
for (Vol v: liste) {
if (v.getTypeVol() == typeVol) {
System.out.println(v.toString())
}
}
} |