gpt4 book ai didi

java - 更改值但不返回任何内容的方法

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:12:29 24 4
gpt4 key购买 nike

请问在不返回任何内容的情况下更改变量内容的方法的术语是什么。

例如在 Java 中,java.util.Arrays 类的静态方法 sort 在内部对数组进行排序,并将排序后的数组设置为 原始数组变量(不确定)。

import static java.util.Arrays.sort;
public class bs {
public static void main(String [] args){

int[] arr = {3,2,4,8,2,5,33,12,19,15,20};
sort(arr); // doing this stuff <<<< and not int [] arr1 = sort(arr);
}
}

1 - 这种方法是否有特定的术语,

和;

2 - 这在内部是如何运作的?它会删除原始变量并将排序后的值分配给具有相同名称的新变量吗??

谢谢!!

最佳答案

我通常称它为突变体 - 或者只是谈论它有副作用。 (通常,增变器是一种您在对象上调用的方法,它会更改该对象的状态。在这种情况下,我们正在更改参数/参数引用的对象,略微 em> 不同。)

至于它是如何工作的——了解变量引用对象之间的区别很重要。

这个方法调用:

sort(arr);

arr 变量的值复制为 sort 方法中的参数值。该值是对对象(在本例中为数组)的引用。该方法根本不会更改 arr 的值 - 它仍然是对同一数组的引用。但是,该方法会更改数组的内容(即哪些元素具有哪些值)。

关于java - 更改值但不返回任何内容的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7931523/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com