ArrayList - 在 toString() 方法上使用 @override

对象的 ArrayList 要求输出采用所需的格式,因此有必要修改 Object 类的父方法,不要忘记指定使用关键字继承此类 @override.

我们有两个类,Point 和 Main。Point 类有 2 个属性:x 和 y。如您所见,我们使用了关键字覆盖 在方法中 toString() 在主类中。我们还将 point 对象的实例存储在 ArrayList 中,然后我们遍历了 ArrayList。您可以看到输出采用方法中定义的格式。toString()。您可以根据需要对此方法进行编程。

public class Point {
private int x;
private int y;

public Point(int x, int y){
this.x=x;
this.y=y;
}

@Override
public String toString() {
return [x= ”+this.x+, y= ”+this.y+]”;
}
}
主类:

import java.util.ArrayList;

public class Main {

public static void main(String[] args) {
ArrayList<项目>list = 新的 ArrayList<项目>()
{
private static final long serialVersionUID = 1L;

@Override
public String toString()
{
return super.toString();
}
};
list.add(新点 (2, 4));
list.add(新点 (1, 6));
list.add(新点 (5, 2));
list.add(新点 (3, 7));
list.add(新点 (8, 9));

System.out.println(list.toString());
}
}
Run:

[[x= 2, y= 4], [x= 1, y= 6], [x= 5, y= 2], [x= 3, y= 7], [x= 8, y= 9]]
在此示例中,ArrayList 使用方法 toString() 在 Point 类中声明。如果我们删除方法 toString() 在 Point 类中,我们将采用以下格式:

[Point@4a5f634c, Point@3c7038b9, Point@6b9c18ae, Point@55187eb3, Point@3b26456a]