存储在基本类型中的引用或值?

时间:2015-08-08 04:38:09

标签: java

我是java的新手,过去主要使用C / C ++进行编程。

我最近在lint code.com上练习, 在我的IDE(Android Studio)和lintcode.com的在线评判系统之间解释同一段代码时,我遇到了一些奇怪的事情。

所以这里是代码:

public class Solution{
    public int kthSmallest(int[][] matrix, int k) {
        int a = matrix[0][0];
        matrix[0][0] = 100;
        return a;
    }
}

请注意,输入矩阵为{{1,5,7},{3,7,8},{4,8,9}},k为4, 在Android Studio中我得到1作为返回值, 在lintcode.com上我得到了100 ...

因为' a'是一个原始类型,我原以为它应该只复制matrix [0] [0]的值,但它似乎是存储它的引用, 哪种行为是正确的? :S

1 个答案:

答案 0 :(得分:0)

  

哪种行为是正确的?

存储的值是正确的。

Primitives vs References