java - JTable 二维对象数组

标签 java jtable

这个问题可能会重复出现,但我尝试了大部分解决方案,但没有一个适合我的问题。 引用此页面:https://docs.oracle.com/javase/tutorial/uiswing/components/table.html

我想创建 JTable 以从自定义类的对象中读取。作为初始步骤,我想使用 JTable 测试循环。如下:

Object[][] tripsData =new Object[3][6];
for(int j=0; j< 3;j++)
        for(int i =0; i< 6;i++)
        {   tripsData[j][i]= new Object[] {"Kathy", "Smith","wait",  "Snowboarding", 5, "false"};
        }

代码工作正常,除了输出如下所示:

 [Ljava.lang.Object;@41488024
 [Ljava.lang.Object;@54c83ae1
 [Ljava.lang.Object;@161a4f2c

我尝试使用 toString() 和 valueOf(),但效果是一样的。 有什么建议可以解决

最佳答案

问题是您正在创建一个三维数组,而不是您需要的二维数组。在您的代码中,您使用

tripsData[j][i]= new Object[] {"Kathy", "Smith","wait",  "Snowboarding", 5, "false"};

因此生成的对象中的“Kathy”有一个索引[j][i][0]“Smith " 有一个索引 [j][i][1] 等等。像这样填充你的数组:

Object[][] tripsData =new Object[3][6];
        for(int j=0; j< 3;j++) {
            tripsData[j] = new Object[]{"Kathy", "Smith", "wait", "Snowboarding", 5, "false"};
        }

然后这两个

    for (Object[] row : tripsData) {
        for (int j = 0; j < data[0].length; j++) {
            System.out.print(row[j]);
            System.out.print("\t");
        }
        System.out.print("\n");
    }

还有这个

for (Object[] row : tripsData) {
    System.out.println(Arrays.toString(row));
}

可以正常工作

关于java - JTable 二维对象数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50235246/

相关文章:

java - Java中的行选择

java - SWING JTable : How do I make each row as high as it's tallest object?

java Spring : assemble other independent services into a single service

java - 在时间戳服务器上使用时间戳和身份验证对 jar 进行签名

java - 使用java读取数据库中的xls文件

java - 如何通过 Netbean Builder 将图像插入 Jtable

java - 如何使 JTable 中的 JButton 可点击

java - JTable 显示值错误/不显示完整值

java - Getter 不关联任何字段 - Realm

java - Picasa API - URL 不适用于标签