你有两个需求,第一个将 listA 和 listB 拼接起来的结果,需要返回;第二,改变后的 listA 的内容。
如果需要得到 listA 被改变后的数据,必须用一个变量来接收,改造方法,用一个 Map 来接收这两个结果才行。
之所以打印的 listA 没有变,是因为它是形式参数,对调用者来说指针地址是没有改变的哦。
改变java中对象的值的问题
20小弟在做一个编程题目的时候,题目要求把listA 和listB 拼接起来,并且如果list A 不是空的话,需要将结果改变到list A。
我现在的问题时,我只是在方法内部把listA的值改了,但是实际上listA的值并没有改变。求教如何彻底的改变listA的值。
我的代码如下主要方法时 iterCatMutList:
public class MyList {
private int value;
private MyList next;
public MyList(int value, MyList next) {
this.value = value;
this.next = next;
}
public static MyList iterCatMutList(MyList listA, MyList listB) {
if(listA==null&&listB==null){
return null;
}
//TODO: fill in method
if (listA != null) {
if (listB!= null) {
MyList Result=new MyList(listA.get(listA.iterSize()-1),listB);
for (int k=listA.iterSize()-2;k>=0;k--){
Result=new MyList(listA.get(k),Result);
}
listA=Result;
return listA;
} else {
return listA;
}
}
}
public int get(int i) {
// base case
if (i == 0) {
return value;
}
// recursive step
return next.get(i - 1);
}
public int iterSize() {
MyList p = this;
int size = 0;
while (p != null) {
size += 1;
p = p.next;
}
return size;
}
可以看见在测试的时候listA的值并未改变。
求教如何解决这个问题
- 点赞
- 写回答
- 关注问题
- 收藏
- 复制链接分享
- 邀请回答
2条回答
为你推荐
- java向方法传递对象参数问题?为什么?
- java
- 3个回答
- 改变java中对象的值的问题
- java
- 2个回答
- 关于String不可变对象的问题求助
- 开发语言
- java
- eclipse
- 1个回答
- 如何改变List中元素的下标
- 编程语言问答
- 互联网问答
- it技术
- IT行业问题
- 计算机技术
- 0个回答
- 如何通过java的反射 修改对象的属性的值
- 编程语言问答
- 互联网问答
- it技术
- IT行业问题
- 计算机技术
- 0个回答
- string究竟可不可以改变引用?
- java
- 4个回答
- Java AtomicReference 中 compareAndSet的更新问题
- java
- 2个回答
- java对象引用修改值的问题
- java
- 12个回答
- java关于实例化对象的问题
- java
- 对象
- 15个回答
- 有关Java继承中,this使用方法的问题。
- 继承
- java
- this
- 10个回答
- java中的引用问题??????
- 7个回答
- JAVA新建同类的两个不同名对象,调用同一个方法,传入值不同,变量不改变,遇到鬼了??
- 3个回答
- java中的对象作为参数传递的问题
- 3个回答
- java中的操作句柄的问题
- 3个回答
- java中的引用和new的用法
- java
- 对象
- 内存
- 5个回答
- 新人学习java反射时的问题
- 反射
- java
- reflection
- 3个回答
- c/c++有指针来改变实参,java中用什么来解决这问题?
- java
- c++
- 4个回答
- java的equals方法重写中的小问题
- java
- 对象
- class
- equals
- boolean
- 4个回答
- java中String究竟是传递的值,还是引用
- 字符串
- java
- jvm
- 13个回答
- JAVA中参数传递问题,为什么ab的值不被改变, 怎样才能被改变!
- int
- 6个回答