我有一个2D数组,该数组的数据是从枚举中获取的。
*Enum Params*
int[][] items
我有一个方法可以接受2D数组作为其参数之一。
对象是遍历2D数组的所有行和列 并获取其值。
*The Method Im Using Currently*
public void sendItemsOnInterface(TeleportData data1) {
resetItemGroups();
for(int i = 0; i < data1.getItems().length; i++) {
for(int j = 0; j < data1.getItems()[i].length; j++) {
int[][] rewards = {{data1.getItems()[i][0], data1.getItems()[j][1]}};
player.getPA().sendScrollableItemsOnInterface(28229, rewards);
}
}
}
但是它只显示数组的第一部分,而不显示数组的整个元素。
该数组以这种格式列出 0 =物品 1 =金额。
我正在尝试列出所有项目和金额。
答案 0 :(得分:0)
我没有尝试过编码,但是, 试试这个可能有用
for (int i= 0; i< data1.length; i++) {
for (int j= 0; j< data1[i].length; j++) {
data1[i][j] = row * col;
System.out.print(data1[i][j] + "\t");
希望这会有所帮助。
答案 1 :(得分:0)
不确定是否要执行此操作,但是如果不需要数组的索引,则应该进行迭代。我会cross目结舌地阅读您的for循环:)
for (int[] row: data.getItems()) {
for (int col: row) {
// do your stuff
}
}
进一步阐述:
int[][] rewards = {{data1.getItems()[i][0], data1.getItems()[j][1]}}
您要为奖励数组分配一行(具有交替的(i和j)行索引)...。我讨厌这个Web编辑器! > :(一个小时尝试将其记录下来,因为我碰到了退格键,它失去了焦点,并返回了浏览器上的页面:p
int contents[][] = { {1, 2} , { 4, 5} };
从另一个堆栈溢出帖子/ answer:Explicitly assigning values to a 2D Array?