java - 使用 for 循环创建多维数组

标签 java for-loop multidimensional-array

有很多已解决的多维数组帖子,但我在尝试通过 for 循环创建一个时遇到了困难。

这是我正在尝试做的代码片段。

//Get a list of Person objects using a method
ArrayList<Person> people = getPeopleList();

//Create an array of 10 Objects with 4 values each
Object[][] data = new Object[10][4];

int count =1;
for(Person p: people)
{
    //This wont compile. This line is trying to add each Object data with values
    data[count-1][count-1] = {count, p.getName(), p.getAge(), p.getNationality()};
    count++;
}

//I then can add this data to my JTable..

谁能告诉我如何使用 for 循环创建这个多维数组。我不想要一个 Person 多维数组。一定要是Object多维数组吗? 谢谢

最佳答案

好吧,你可以这样做:

//Get a list of Person objects using a method
ArrayList<Person> people = getPeopleList();
Object[][] data = new Object[people.size()][];

for(int i = 0; i < people.size(); i++)
{
    Person p = people.get(i);
    data[i] = new Object[] { i, p.getName(), p.getAge(), p.getNationality() };
}

这会起作用,但它非常难看。如果我是你,我会考虑让 Swing 更好地“理解”你的 Person 类,以避免完全需要 Object[][]

关于java - 使用 for 循环创建多维数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16400328/

相关文章:

java - 我的代码 Thread.sleep 有效,但不能隐式等待?

java - 使用 postman 测试启用 spring security 的 api

java - 如何使用 java 将 getopts 参数传递给 shell 脚本

javascript - 我可以使用带有 if 语句的 for 循环来代替 .hasOwnProperty()

javascript - 在坐标的相对位置显示矩阵的算法

java - 将unicode纯文本转换为普通字符串

javascript - 如何循环遍历嵌套数组,然后使用 Javascript 以预定义的顺序存储输出

c++ - 在 for 循环中使用 end() 时无法访问双向链表中的最后一个元素

PHP 显示结果的简洁方式,没有重复的标题

php - 替换多维数组中的某些项目