gpt4 book ai didi

java - 参数传递到方法中的顺序 (Java)

转载 作者:行者123 更新时间:2023-12-01 07:14:38 31 4
gpt4 key购买 nike

是否定义了将参数传递到方法(在 Java 中)的顺序?例如代码段中

Arrays.equals(ascendingSegment, Arrays.sort(ascendingSegment))

它用于检查数组是否确实按升序排列,我是否保证在调用排序方法之前传入原始数组?

编辑:看来这其中有一点误会。 equals 方法在排序之前是否获取 ascendingSegment 的副本,或者在传递第一个参数之前首先调用排序?给定一个数组,例如 {1, 5, 2, 4},equals 方法会接收 {1, 5, 2, 4}{1, 2, 4, 5} 作为参数还是 {1, 2, 4, 5} 的两个副本?

最佳答案

如果您使用调试器单步执行它并单步执行它,您将看到所有参数都被计算,然后该函数被调用。

我还想说,尝试执行您发布的操作是一种不好的做法。当测试一个对象时,您不应该对该对象执行任何会改变它的操作。在该方法调用之后,您将无法在测试之前显示列表的顺序。

编辑: Arrays.sort()不返回值,它就地排序。因此你不能这样使用它。您应该使用 Arrays.copyOf() 制作数组的副本,对副本进行排序,然后比较两个数组。

关于java - 参数传递到方法中的顺序 (Java),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5756734/

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