小编ale*_*ddy的帖子

Java-将Lists传递给作为传递引用的方法

stackoverflow中有很多关于按值传递和通过引用传递的讨论.但是我想知道以下场景中发生了什么?这个页面说java是按值传递的.Java是"通过引用传递"还是"传递价值"?.

如果是以下代码,则从removeElement方法中删除该元素,当我打印列表时,它将从列表中删除第5个元素.

public class Load {
    public static void main(String[] args) {


        ArrayList<Integer> list = new ArrayList<Integer>();
        list.addAll(Arrays.asList(1,1,2,3,5,5,13,21));
        removeElement(list);
        System.out.println(list);
    }
        public static void removeElement(List<Integer> list){
            list.remove(5);//removes element at index 5
        }
}
Run Code Online (Sandbox Code Playgroud)

该程序的输出是 [1, 1, 2, 3, 5, 13, 21].

有人可以解释这是如何通过价值而不是通过参考传递?

java

10
推荐指数
3
解决办法
1万
查看次数

标签 统计

java ×1