如何遍历整个数组并获取它?

时间:2019-04-16 01:06:22

标签: java arrays

我有一个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 =金额。

我正在尝试列出所有项目和金额。

2 个答案:

答案 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?