Java: l'Impression d'un objet à des fins de débogage
Je voudrais un moyen facile d'imprimer un objet java, ou pour le dire d'une autre façon, de sérialiser un objet sous forme de chaîne. Je voudrais voir les valeurs de toutes les variables contenues dans l'objet, et si il y a plus d'objets (comme une liste ou autre), il doit imprimer les choses dans l'objet en tant que bien. Fondamentalement, il pourrait être quelque chose comme encodage JSON, mais JSON ne prend pas en charge l'infini, et j'ai besoin de voir si il y a de l'infini ou de NaN dans l'un des double ou float valeurs.
Comment puis-je faire cela?
Si c'est une classe que vous avez écrit, juste remplacer le
Je n'ai pas l'écrire. Et qui peut prendre beaucoup de temps à faire manuellement, même si je le pouvais.
double possible de le Dumping java propriétés de l'objet
Qu'entendez-vous par "mais JSON ne prend pas en charge l'infini"?
voir sec 2.4 de la spec - ietf.org/rfc/rfc4627.txt?number=4627 (NaN et l'infini ne sont pas pris en charge par JSON officiellement)
ToString()
méthode appropriée.Je n'ai pas l'écrire. Et qui peut prendre beaucoup de temps à faire manuellement, même si je le pouvais.
double possible de le Dumping java propriétés de l'objet
Qu'entendez-vous par "mais JSON ne prend pas en charge l'infini"?
voir sec 2.4 de la spec - ietf.org/rfc/rfc4627.txt?number=4627 (NaN et l'infini ne sont pas pris en charge par JSON officiellement)
OriginalL'auteur Muhd | 2011-04-14
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser Gson pour sérialiser en JSON comme il prend maintenant en charge de NaN et de +/- l'infini
Gson gson = new GsonBuilder().serializeSpecialFloatingPointValues().serializeNulls().create(); System.out.println(gson.toJson(obj));
qui permettez-moi de voir les valeurs null, NaN et l'infini de valeurs.Cela ne fonctionne pas très bien avec moqué des objets ou des variables statiques
OriginalL'auteur Daniel DiPaolo
Le plus souvent ToStringBuilder.reflectionToString(Objet) fonctionne très bien. Il l'habitude de travailler quand vous faites des Cartes.
le lien semble brisé. Veuillez vérifier s'il a été déplacé vers un nouvel emplacement.
OriginalL'auteur lobster1234