有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

返回随机数和不正确数据的java arraylist

所以我有一个arraylist

private static ArrayList<Job> teamNoOne = new ArrayList<Job>();

属于工作类型,有

public class Job {
    //public long time;
    public int teamNo;
    public String regNo;
    public String gridRef;

}

然后我从文本字段中获取数据

Job job = new Job();
job.gridRef = tfGridRef.getText();

这一切都有效,打印到系统中等

当我将其添加到arraylist中,并使用以下代码将其打印出来时:

teamNoOne.add(job);

System.out.println(teamNoOne.get(0));

我只知道:Job@1c79dfc

我一辈子都搞不懂为什么

干杯


共 (1) 个答案

  1. # 1 楼答案

    当使用sysout打印对象时,将调用其toString方法。如果类中未重写toString方法,则将使用其默认实现。对象toString方法的默认实现打印对象的哈希代码的类名和无符号十六进制表示形式,用@符号分隔

    您需要在Job类中重写toString方法,以便以漂亮的方式打印对象。大多数IDE都提供了一种自动生成toString方法的方法。下面是通过eclipse生成的一个:

    @Override
    public String toString() {
        return "Job [teamNo=" + teamNo + ", regNo=" + regNo + ", gridRef="
                + gridRef + "]";
    }