0
点赞
收藏
分享

微信扫一扫

Java 引用和赋值 传值与传引用

王老师说 2022-09-23 阅读 125

package test;



public class Test {

int value;



public static void main(String args[]) {

Test test = new Test();

test.value = 1;

Test test2 = new Test();

test2 = test;

test.value = 2;

System.out.println(test.value);// 2

System.out.println(test2.value);// 2

}

}
















package test;


public class Test2 {
int value;


public static void main(String args[]) {
Test test = new Test();
test.value = 1;
int temp = test.value;
test.value = 2;
System.out.println(test.value);// 2
System.out.println(temp);// 1
}
}



















package test;


public class Test3 {
int value;


public static void main(String args[]) {
Test test = new Test();
test.value = 1;
Test temp = new Test();
temp.value = test.value;
test.value = 2;
System.out.println(test.value);// 2
System.out.println(temp.value);// 1
}
}


















package test;


public class Test4 {
int value;


public static void main(String args[]) {
Test test = new Test();
test.value = 1;
int[] temp = new int[1];
temp[0] = test.value;
test.value = 2;
System.out.println(test.value);// 2
System.out.println(temp[0]);// 1
}
}

















package test;


import java.util.ArrayList;
import java.util.List;


public class Test5 {
public static void main(String args[]) {
Test test = new Test();
List list = new ArrayList();
list.add(test);
Test test2 = (Test) list.get(0);
System.out.println(test);// 同下
System.out.println(test2);// 同上
}
}

















package test;


import java.util.ArrayList;
import java.util.List;


public class Test6 {
int value;


public static void main(String args[]) {
Test test = new Test();
test.value = 1;
List list = new ArrayList();
list.add(test);
test.value = 2;
Test test2 = (Test) list.get(0);
System.out.println(test.value);// 2
System.out.println(test2.value);// 2
}
}

















package test;


import java.util.ArrayList;
import java.util.List;


public class Test7 {
int value;


public static void main(String args[]) {
Test test = new Test();
test.value = 1;
List list = new ArrayList();
list.add(test);
test.value = 2;
Test test2 = (Test) list.get(0);
System.out.println(test.value);// 2
System.out.println(test2.value);// 2
}
}

















package test;


public class Test8 {
int value;


public static void main(String args[]) {
Test8 test = new Test8();
test.value = 1;
Test8 test2 = test;
test.value = 2;
System.out.println(test.value);// 2
System.out.println(test2.value);// 2
}
}
















package test;


public class Test9 {
int value;


public void setInt(int parameter) {
parameter = 10;
}


public void setObject(Test9 parameter) {
parameter.value = 10;
}


public static void main(String args[]) {
Test9 test = new Test9();
test.value = 1;
test.setInt(test.value);
System.out.println(test.value);// 1

Test9 test2 = new Test9();
test2.value = 1;
test2.setObject(test2);
System.out.println(test2.value);// 10
}
}

















package test;


public class Test10 {
int value;


public void setInt(int parameter) {
parameter = 10;
}


public void set() {
value = 10;
}


public void setObject(Test10 parameter) {
parameter.value = 10;
}


public static void main(String args[]) {
Test10 test = new Test10();
test.value = 1;
test.set();
System.out.println(test.value);// 10


Test10 test2 = new Test10();
test2.value = 1;
test.setObject(test2);//注意是test不是test2
System.out.println(test2.value);// 10
}
}

















package test;


public class Test11 {
int value;


public static void main(String args[]) {
Test11[] test = new Test11[1];
test[0] = new Test11();
test[0].value = 1;
System.out.println(test[0].value);// 1


Test11 test2 = new Test11();
test2.value = 2;
test2 = test[0];
test[0].value = 3;
System.out.println(test2.value);// 3
test2.value = 4;
System.out.println(test[0].value);// 4
}
}

举报

相关推荐

0 条评论