Obtenez de l'objet instancié par Chaîne
Est-il possible d'obtenir un Objet qui est démontré dans le Code par une Chaîne au moment de l'Exécution?
Quelque chose comme ça:
public String xyz = "aaaa_bbb";
getObject("xyz").some function of String (e.g.: .split("_"))
Grâce
La réflexion est ce que vous voulez probablement. Mais il est également probable qu'une simple
Ce n'est pas possible.
HashMap
pouvez faire ce que vous avez vraiment besoin pour.Ce n'est pas possible.
OriginalL'auteur user630447 | 2011-02-23
Vous devez vous connecter pour publier un commentaire.
Voici un exemple
Si c'est un champ de classe, vous pouvez l'obtenir par un nom comme cela.
Si c'est un méthode de la variable que vous essayez d'invoquer, alors vous pourriez être en mesure d'obtenir à la variable à partir de la méthode actuelle de la pile d'appel
Thread.currentThread().getStackTrace()
peut-être.J'ai édité un peu. Check it out.
Merci beaucoup, c'est ce que je cherchais
OriginalL'auteur Bala R
Vous pourriez avoir à reformuler la question.
Si vous voulez juste pour obtenir le "aaaa" et "bbb" les chaînes à partir de la première chaîne, vous pouvez utiliser StringTokenizer
OriginalL'auteur Mugur
Il est difficile de faire ce que vous demandez, mais vous pouvez récupérer les valeurs de champ par le nom à l'aide de la réflexion. Quelque chose comme ceci:
(Je l'ai laissé de côté beaucoup de la gestion des exceptions ...)
Mais comme un commentaire, si vous êtes vraiment essayer de mettre en œuvre un tableau associatif, il y a de meilleures façons de le faire en Java, par exemple à l'aide d'un
Map
classe.OriginalL'auteur Stephen C
Si votre Chaîne est un champ de membre de votre objet, vous pouvez aller jeter un oeil à la
classe.
Cependant, je dois vous avertir que le code que vous aurez sera de loin le plus de ce qui vous attend ici. En effet, vous aurez à faire certaines opérations :
Class#getDeclaredMethod(...)
)Chacune de ces étapes sera eb une obscure ligne de code, avec un tas de avaient envoyé des exceptions.
Donc, si vous avez une alternative, bien, l'utiliser !
OriginalL'auteur Riduidel
J'ai composants personnalisés sur une composite, et je voudrais travailler avec eux sans les repeignant. - Je savoir si j'utilise une Liste ou sur la Carte que c'est possible, mais j'ai changer la valeur dans la Carte et de repeindre l'interface graphique avec les informations de la Carte.
OriginalL'auteur user630447