[quote=引用 5 楼 crazy_wujianfeng 的回复:] [quote=引用 4楼93吸血鬼 的回复:][quote=引用 3 楼 crazy_wujianfeng 的回复:] [quote=引用 1楼xiaojunjor 的回复:]经过排序之后应该是改变的,是不是代码有的地方编错了? 排序之前数组在堆中,传入形参时把在堆中的这个地址值传给参数,所以方法内对数组的改变就是改变了改数组,改变之后的数组还是在堆中原来的内存空间内。
[quote=引用 4楼93吸血鬼 的回复:][quote=引用 3 楼 crazy_wujianfeng 的回复:] [quote=引用 1楼xiaojunjor 的回复:]经过排序之后应该是改变的,是不是代码有的地方编错了? 排序之前数组在堆中,传入形参时把在堆中的这个地址值传给参数,所以方法内对数组的改变就是改变了改数组,改变之后的数组还是在堆中原来的内存空间内。
[quote=引用 1楼xiaojunjor 的回复:]经过排序之后应该是改变的,是不是代码有的地方编错了? 排序之前数组在堆中,传入形参时把在堆中的这个地址值传给参数,所以方法内对数组的改变就是改变了改数组,改变之后的数组还是在堆中原来的内存空间内。
经过排序之后应该是改变的,是不是代码有的地方编错了? 排序之前数组在堆中,传入形参时把在堆中的这个地址值传给参数,所以方法内对数组的改变就是改变了改数组,改变之后的数组还是在堆中原来的内存空间内。
public class Test{ public static void main(String[] args){ String[] strs = {"a","b","c"}; String[] strc = strs.clone(); strc[2] = "d"; System.out.println(strs[2]); } }
[quote=引用 3 楼 crazy_wujianfeng 的回复:] [quote=引用 1楼xiaojunjor 的回复:]经过排序之后应该是改变的,是不是代码有的地方编错了? 排序之前数组在堆中,传入形参时把在堆中的这个地址值传给参数,所以方法内对数组的改变就是改变了改数组,改变之后的数组还是在堆中原来的内存空间内。
62,614
社区成员
307,327
社区内容
加载中
试试用AI创作助手写篇文章吧