📌  相关文章
📜  教资会网络 | UGC NET CS 2015 年 12 月 – III |问题 32(1)

📅  最后修改于: 2023-12-03 15:26:03.121000             🧑  作者: Mango

教资会网络 | UGC NET CS 2015 年 12 月 – III |问题 32

题目描述

给出下面的程序代码:

public class MyClass{
    public static void main(String[] args){
        int arr1[][] = { { 2, 3 }, { 4, 5, 6 } };
        int arr2[][] = arr1;
        System.out.print(arr2[1][1]);
     }   
}

程序的输出结果是什么?

A. 2
B. 3
C. 4
D. 5

介绍

这是一个关于Java多维数组的题目。给定一个二维数组arr1,让另一个二维数组arr2指向arr1,并输出arr2的第二行第二个元素。这涉及Java中的引用传递和多维数组的相关知识。

解答

正确答案是D. 5。

在代码中,arr2被指向arr1,这意味着它们引用了同样的二维数组对象。因此,当arr2改变时,arr1也会改变。因为arr2指向的是数组arr1,它存储了元素{ {2, 3}, {4, 5, 6} },因此arr2[1][1]等于arr1[1][1],即5。

System.out.print(arr2[1][1]); // 输出 5

因此,选项D是正确的。

结论

本题涉及Java的多维数组和引用传递的相关知识点。程序中,arr2被指向arr1,意味着它们引用了同样的二维数组对象。因此,当arr2改变时,arr1也会改变。因为arr2指向了存储元素{ {2, 3}, {4, 5, 6} }的数组arr1,arr2[1][1]等于arr1[1][1],即5。因此,输出结果是5。