加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 为什么下面的代码编译没有错误?

发布时间:2020-12-14 16:30:43 所属栏目:Java 来源:网络整理
导读:我是 java新手并试图理解以下内容.数组的长度不一样.代码仍然执行没有任何错误.我不明白为什么.如果有人可以澄清. public class Practice { public static void main(String[] args){ int [][] a = {{1,2,3},{4,5}}; a[0] = a[1]; }} 解决方法 a [0]和[1]都
我是 java新手并试图理解以下内容.数组的长度不一样.代码仍然执行没有任何错误.我不明白为什么.如果有人可以澄清.
public class Practice {
    public static void main(String[] args){

        int [][] a = {{1,2,3},{4,5}};
        a[0] = a[1];
    }
}

解决方法

a [0]和[1]都是int数组(即它们的类型是int []),因此可以将一个分配给另一个,而不管它们所指的当前数组的长度如何.

您的代码与以下代码没有太大区别:

int [] a = {1,3};
int [] b = {4,5}
a = b;

或者从这段代码:

Object a = ...
Object b = ...
a = b;

在这两种情况下(如在原始代码中),您正在更改引用类型变量的值以引用其他对象.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读