如何访问2D数组中的第二个括号

时间:2018-01-23 23:59:32

标签: java arrays

我是编码的新手,目前正在学习2D数组,我刚学会了在2D数组的第二部分使用花括号,但我不知道如何访问和使用花括号中的数字。我目前正在做的事情就是这样,

array[1] = new int[]{1, 2, 3, 4, 5};
array[2] = new int[]{3, 7, 34, 57};

我想知道如何访问大括号中的数字,所以我可以将它们设置为变量。例如,使用数字作为数组的值

例如,new int[]{2}将获得array[2]

的值

我希望这听起来不会太愚蠢,你可以理解我的问题

4 个答案:

答案 0 :(得分:1)

public class StackOverflowTest {
    public static void main(String[] args) {
        int[][] array = new int[3][5];
        array[1] = new int[]{1, 2, 3, 4, 5};
        array[2] = new int[]{3, 7, 34, 57};

        System.out.println(array[1][0]);
        System.out.println(array[1][1]);
    }
}

如果您想访问元素1,则应将其作为array[1][0]访问 如果您想访问元素2,则应将其作为array[1][1]访问 如果您想访问元素57,则应将其作为array[2][3]访问 请注意,数组索引从0开始。

检查this以了解有关java 2D数组的更多信息

答案 1 :(得分:0)

您还可以像这样填充2D数组:

import re

def grp(txt): 
    s = re.search(r'Test-(\d+)\.model', txt, re.IGNORECASE)
    if s:
        return int(s.group(1))
    else:
        return float('-inf')  # Sorts non-matching strings ahead of matching strings

names.sort(key=grp)

循环使用二维数组元素(行和列)的一种方法是使用两个 for 循环:

int[][] array = { {1, 2, 3, 4}, {11, 22, 33, 44}, {111, 222, 333, 444} };

答案 2 :(得分:0)

如果您不知道行和列值并且它不相等,则循环遍历2d数组请尝试:

   public class Main
{
    public static void main(String... s)
    {
        int a[ ][ ]={{3,4,5},
                    {6,7,8},
                    {3,5}};
        for(int i = 0;i < a.length; i++) {
            for(int j = 0;j< a[i].length;j++) {
                System.out.print(a[ i] [j ]);
            }
            System.out.println();
    }
    }
}

答案 3 :(得分:0)

向下滚动TL; DR如果您不关心为什么/如何

您可以将Java中的2D数组可视化为数组数组,但让我们从一维数组开始,例如

int[] arr = {1, 2, 3, 4};

这是一个简单的整数数组(在Java中称为int基本类型)。

通过声明arr变量(这只是一个任意名称,可能是blah偶像),类型为int[],你说你想要一个数组整数。

要获得一个2D整数数组,让我们首先在Java中可视化一个2D数组,这实际上是一个&#34;数组数组&#34;,就像这样,

int[][] arr2d = {
    {1, 2, 3, 4},
    {5, 6, 7, 8},
}

因此{1, 2, 3, 4}表示您的第一个数组,这是外部数组的第一项,而{5, 6, 7, 8}是外部数组中的第二项。 要将这些数组用于打印或存储在变量中,您可以使用

int[] my1stArray = arr2d[0]; // gives you {1, 2, 3, 4} stored in my1stArray

int[] my2ndArray = arr2d[1]; // gives you {5, 6, 7, 8} stored in my2ndArray

现在,您可以像以前一样对索引进行索引,就像

一样
my2ndArray[2] // gives you 7

所以2D数组只不过是一个数组数组,所以结合2个级别/维度,你就

arr2d[0][0] // gets you 1 stored in {1, 2, 3, 4}
arr2d[1][3] // gets you 8 stored in {5, 6, 7, 8}

Java Arrays Explained

<强> TL; DR

int[][] arr2d = {
    {1, 2, 3, 4},
    {5, 6, 7, 8},
}
arr2d[0][2] // gives you 3 from {1, 2, 3, 4}, so 1st array, 3rd item.