En Java, chaque liste contient des objets, de sorte que l'opération list.get(i)
retourne un Object
. Si vous souhaitez effectuer une action sur l'instance de classe Student
, vous devez vérifier si cet objet est une instance de classe Student
., Puis la convertir en classe Student
. Si vos listes ne contiennent que des étudiants, vous pouvez ajouter un generic type comme suit: List<Student> stidents
. Ensuite, l'opération list.get(i)
renverra une instance Student
. Mais cela va dans les deux sens, vous pouvez seulement ajouter Student
objets à cette liste.
En bref, vous avez deux choix:
utilisation type liste générique:
public static int numberPassed(List<Student> students){
...
}
ou acteurs:
Student student = (Student)students.get(i);
System.out.println(student.mark);
'Liste students' - vous avez effacé le type. Chaque élément de la liste est traité comme 'Object' – UnholySheep
Quelque chose comme' (Student) students.get (i) ' –
@ cᴏʟᴅsᴘᴇᴇᴅ pourquoi introduire les frais généraux de casting ?. il suffit d'utiliser des génériques en premier lieu. –