Recuperer la classe des objets d une liste
Fermé
ahmadou_20
Messages postés
6
Date d'inscription
dimanche 24 août 2014
Statut
Membre
Dernière intervention
22 décembre 2014
-
Modifié par ahmadou_20 le 22/12/2014 à 17:33
KX Messages postés 16755 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 12 février 2025 - 22 déc. 2014 à 20:33
KX Messages postés 16755 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 12 février 2025 - 22 déc. 2014 à 20:33
A voir également:
- Recuperer la classe des objets d une liste
- Site pour vendre des objets d'occasion - Guide
- Liste déroulante excel - Guide
- Recuperer message whatsapp supprimé - Guide
- Recuperer video youtube - Guide
- Liste déroulante en cascade - Guide
2 réponses
KX
Messages postés
16755
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
12 février 2025
3 020
Modifié par KX le 22/12/2014 à 20:34
Modifié par KX le 22/12/2014 à 20:34
Bonjour,
Ce que tu veux faire n'est pas possible.
Tu peux récupérer le type d'un des éléments en particulier en faisant
Dans ton cas cependant ça n'a aucun intérêt car Integer est une classe finale, il ne peut donc pas y avoir d'héritage et seuls des Integer peuvent y être stockés.
Ce serait bien différent avec une List<Number> qui pourrait contenir aussi bien des Integer, des Long, Float, Double, etc. Mais il n'y a aucune manière de récupérer le type Number à partir de la liste ou des objets inclus dans cette liste.
En revanche - mais c'est à vérifier - il pourrait être possible de déterminer le type paramétré s'il fait partie de la signature d'une méthode, c'est à dire soit un paramètre, soit un type de retour. Dans ce cas il faut faire l'analyse sur la méthode et non pas sur la liste ou ses éléments.La confiance n'exclut pas le contrôle
Ce que tu veux faire n'est pas possible.
Tu peux récupérer le type d'un des éléments en particulier en faisant
list.get(i).getClass()par exemple, mais tu ne peux pas récupérer le type paramétré de la liste (Integer ici) car à la compilation il est supprimé.
Dans ton cas cependant ça n'a aucun intérêt car Integer est une classe finale, il ne peut donc pas y avoir d'héritage et seuls des Integer peuvent y être stockés.
Ce serait bien différent avec une List<Number> qui pourrait contenir aussi bien des Integer, des Long, Float, Double, etc. Mais il n'y a aucune manière de récupérer le type Number à partir de la liste ou des objets inclus dans cette liste.
En revanche - mais c'est à vérifier - il pourrait être possible de déterminer le type paramétré s'il fait partie de la signature d'une méthode, c'est à dire soit un paramètre, soit un type de retour. Dans ce cas il faut faire l'analyse sur la méthode et non pas sur la liste ou ses éléments.La confiance n'exclut pas le contrôle
22 déc. 2014 à 20:18
22 déc. 2014 à 20:21
Je ne fais pas de Java, mais typeOf() me parfait bien
22 déc. 2014 à 20:28
typeOf c'est du JavaScript... pas du Java !
22 déc. 2014 à 20:30