java中如何打印ArrayList中的自定义类元素的数据域?

2025-04-18 13:03:55
推荐回答(4个)
回答1:

重写toString方法,在自定义类中重写toString方法,组装自己的格式。


ArrayList在它的父类AbstractCollection中重写了toString方法,该方法用Iterator的方式遍历自己的集合。遍历时直接把元素加入到了StringBuilder中,这样相当于调用元素的toString方法。


举个例子:

import java.util.ArrayList;
import java.util.List;
public class Test5 {
/**
* @param args
*/
public static void main(String[] args) {
List ms = new ArrayList();
ms.add(new MyData("0"));
ms.add(new MyData("1"));
ms.add(new MyData("2"));
ms.add(new MyData("3"));
System.out.println(ms);
}
}
class MyData {
private String name;
public MyData(String name) {
this.name = name;
}
public String toString() {
return "数据域:" + name;
}
}

回答2:

你这种写法也可以啊。
另外,你也可以在你的类里加一个public String toString()的方法,用于重写Object类的方法。
有这个方法后,你可以直接用System.out.println(new Transaction());来输出你的对象的信息了。

回答3:

类里面要有get***的方法。利用方法来取值。

回答4:

就是这个有问题啊。
transactions.add( new Transaction(参数省略) );

其他基本没有问题啊。