Voilà j'ai une méthode qui fonctionne, mais que je dois transformé et utilisé les itérateurs. Malheureusement j'ai pas mal de difficulté avec les itérateurs et avec cette méthode:
private void createMediaList(List<List<String[]>> data)
Enfin voilà la méthode original :
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
| private void createMediaList(List<List<String[]>> data) {
int indiceList = 0;
while(indiceList<= data.size()-1){
List<String[]> subData = listReader(data, indiceList);
Media aMedia = new Media();
aMedia.setAlbum(getStringField((subData.get(3))));
aMedia.setArtist(getStringField(subData.get(2)));
aMedia.setLocation(getStringField(subData.get(6)));
aMedia.setName(getStringField(subData.get(1)));
aMedia.setRating(stringToInt(getStringField(subData.get(5))));
aMedia.setTrack_ID(stringToInt(getStringField(subData.get(0))));
aMedia.setYear(stringToInt(getStringField(subData.get(4))));
this.basicAdd(aMedia);
indiceList++;
}
}
//PRE:-Le parametre L est une liste de liste de tableaux de String completement initialisee
// -Le parametre n est un entier positif
//POST:-La sous-liste dont l' indice est n est renvoyee
static List<String[]> listReader(List<List<String[]>> L, int n){
List<String[]> subList = L.get(n);
return subList;
}
//PRE:-tab est un tableau de String et est completement initialise
//POST:-Le String contenu dans la seconde case de tab est renvoyee
static String getStringField(String[] tab){
String field = tab[1];
return field;
}
//PRE:- s est un String contenant des caracteres representant un nombre entier
//POST:- L' entier represente par le String s est renvoye
static int stringToInt(String s){
int Int = Integer.parseInt(s);
return Int;
} |
Et la méthode que j'ai créer avec le manque de connaissance que j'ai sur les itérateurs:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| Iterator <List<String>> iterateur = List<List<String[]>> data;
aMedia.getAlbum();
aMedia.getArtist();
aMedia.getLocation();
aMedia.getName();
aMedia.getRating();
aMedia.getTrack_ID();
aMedia.getYear();
for (List<List<String>> it : iterateur)
{it.hasNext();}
this.basicAdd(aMedia);
} |
J'aimerais donc que mon itérateur soient en Java 5
Partager