Java 使用Arrays.deepToString()从多维数组中的特定索引打印

Java 使用Arrays.deepToString()从多维数组中的特定索引打印,java,multidimensional-array,Java,Multidimensional Array,是否有一种方法可以使用Arrays.deepToString()从多维数组打印特定值 例如,我想在多维数组中打印索引[1,1]处的值 我希望这是有道理的 public class App { public static void main(String[] args) { int[][] a = { {10,20,30,40,50},{10,20,30,40,50} }; System.out.prin

是否有一种方法可以使用
Arrays.deepToString()
从多维数组打印特定值

例如,我想在多维数组中打印索引[1,1]处的值

我希望这是有道理的

public class App {

    public static void main(String[] args) {

        int[][] a = {
                {10,20,30,40,50},{10,20,30,40,50}
        };

        System.out.println(Arrays.deepToString(a));
        System.out.println(Arrays.deepToString(a[1][1]));
    }    
}
印刷品:

20
数组中的deepToString(Object[])返回对象数组的字符串表示形式。 例如:

 int[][] a = {{10,20,30,40,50},{10,20,30,40,50}};

 System.out.println(Arrays.deepToString(a));

 Output:- [[10, 20, 30, 40, 50], [10, 20, 30, 40, 50]] // String representation of 'a'
deepToString()就是这个

若要打印特定元素,则使用数组的坐标,如

System.out.println(a[1][2]);  //Output:-  30
简短回答 对, 它起作用了。 你在帖子的评论中提到了这一点

为什么有效
数组。deepToString
似乎以递归方式展开 (并致电
toString
方法(在每个元素上) 传递给它的任何数组。 你的情况是一个特殊的例子 “不是数组,只是打印参数”。 以你为例,,
第二次调用deepToString是不必要的。

或者:有人能解释一下原因吗:System.out.println(Arrays.deepToString(新整数[]{a[1][1]);有效吗?如果您只想打印数组中特定位置的值,那么就不是
System.out.println(a[1][1])你想要什么?不需要使用deepToString或…?这毫无意义。。。通过[1][1]可以直接访问存储在其中的值。System.out.println(Arrays.deepToString(a[1][1])永远不会编译。我认为您缺少了一些东西,希望数组创建一个
字符串。因此,您不能像
Arrays.deepToString(a[1][1])
那样提供
int
值,在这种情况下,可以像
a[1][1]那样直接打印
int
System.out.println(a[1][2]);  //Output:-  30