Java 如何将三个对象数组分组到一个对象下?

Java 如何将三个对象数组分组到一个对象下?,java,object,driver,compareto,Java,Object,Driver,Compareto,我为这些措辞道歉,我一整天都在这样做,我1/2都不知道自己在做什么 在链接的源代码第44行,我想创建一个对象数组,其中包含对对象数组的引用矩形/单词/日期。当我尝试引用things[0]/things[1]/things[2]中的对象时,我会返回地址,即System.out.println things[0] 我很确定使用对象超类与使用驱动程序对象相比是一种糟糕的做法。我很难说出这样的话: 驱动程序[]矩形=新的MyMRects[10] 谢谢你抽出时间 我不知道你为什么要创建things数组。你

我为这些措辞道歉,我一整天都在这样做,我1/2都不知道自己在做什么

在链接的源代码第44行,我想创建一个对象数组,其中包含对对象数组的引用矩形/单词/日期。当我尝试引用things[0]/things[1]/things[2]中的对象时,我会返回地址,即System.out.println things[0]

我很确定使用对象超类与使用驱动程序对象相比是一种糟糕的做法。我很难说出这样的话: 驱动程序[]矩形=新的MyMRects[10]


谢谢你抽出时间

我不知道你为什么要创建things数组。你好像没用它。在任何情况下,比Object[]数组更好的方法是创建一个包含正确类型变量的类:

class Things {
    public MyMRects  [] rectangles;
    public MyStrings [] words;
    public MyDates   [] dates;
}
Things things = new Things();
things.rectangles = rectangles;
things.words = words;
things.dates = dates;
至于返回地址的问题,这是数组toString的默认行为。要将数组转换为人类可读的字符串,请尝试使用java.util.Arrays类:


首先你需要减去π,这里的代码太多了。你需要删掉所有的绒毛,并在这篇文章中实际发布相关的代码段…地址?java中没有地址。如果已正确分配,您将获得原始对象,但在将该对象强制转换回其原始类型之前,您将无法使用其任何方法。如果您有一个对象数组,您将执行一些操作[n]您将在n处获得对象,您希望它返回什么?如果你想访问n,请使用things[n][m]。谢谢大家的评论。我不再使用数组,而是实现了一个自定义类。更干净,更容易使用。
System.out.println(Arrays.toString(words));