如何编写一个通用的toString()方法呢?
下文笔者讲述使用Java编写一个通用的toString()方法分享,如下所示:
世上最完整的toString示例分享
实现思路: 1.借助反射获取类中所有字段名称 2.遍历输出所有字段值例:
世上最完整的toString示例分享
package com.java265.other; import java.lang.reflect.Field; public class Test { /* * java265.com 数字格式化为货币样式输出的示例分享 **/ public static void main(String[] args) { A a = new A("java265.com", 88, "我是一个网站"); String t = a.toString(); System.out.println("======================="); System.out.println(t); } } class A { private String name; private int age; public String notes; public A() { } public A(String name, int age, String notes) { this.name = name; this.age = age; this.notes = notes; } public String toString() { StringBuilder result = new StringBuilder(); String newLine = System.getProperty("line.separator"); result.append(this.getClass().getName()); result.append(" Object {"); result.append(newLine); Field[] fields = this.getClass().getDeclaredFields(); for (Field field : fields) { result.append(" "); try { result.append(field.getName()); result.append(": "); result.append(field.get(this)); } catch (IllegalAccessException ex) { System.out.println(ex); } result.append(newLine); } result.append("}"); return result.toString(); } } -------运行以上代码,将输出以下信息----- ======================= com.java265.other.A Object { name: java265.com age: 88 notes: 我是一个网站 }
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。