java - 是否可以在 Java 中按值传递数组(而不是引用)?

标签 java

这个问题在这里已经有了答案:





Is Java "pass-by-reference" or "pass-by-value"?

(92 个回答)


7年前关闭。




是否可以在 Java 中的函数中按值传递数组。默认情况下,当我们在函数中传递数组时,它是通过引用传递的,并且数组中数据的原始版本会被修改。

因此想知道Java中是否有按值传递选项?

最佳答案

不,Java 没有,但是您可以制作防御性副本...

public void doSomethingWithArray(int[] arr) {
    int[] myArr = Arrays.copyOf(arr, arr.length);
     ...
}

关于java - 是否可以在 Java 中按值传递数组(而不是引用)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28003275/

相关文章:

java - 从 arrayList 中将双括号删除为单括号

java - 如何知道我的每个java程序是否运行在自己不同的JVM实例上?

java - Spring 自定义注解 : how to inherit attributes?

java - 尝试连接到 URL 读取 xml 时出现错误 401

java - 从数据库动态集成 Flotr2 图表

java - Java 8 流是原子的吗?

java - 如何在不修改应用程序(xxx.jar)的情况下使用类路径上的额外文件运行 Spring Boot 应用程序

java - Spinner 中的自定义项目数

java - 从集合初始化 map

java - 将退出按钮转换为重置按钮