/*
* 关于变量的赋值
*
* 如果变量是基本数据类型,此时赋值的是变量所保存的数据值。
* 如果变量是引用数据类型,此时赋值的是变量所保存的数据的地址值。
*
*/
public class ValueTransferTest {
public static void main(String[] args) {
int m = 10;
int n = m;
System.out.println("m = " + m + ", n = " + n);
n = 20;
System.out.println("m = " + m + ", n = " + n);
System.out.println("*********引用数据类型:***********");
Order o1 = new Order();
o1.orderId = 1001;
Order o2 = o1;//赋值以后,o1和o2的地址相同,都指向了堆空间中同一个对象实体。
System.out.println("o1.orderId = " + o1.orderId + ",o2.orderId = " + o2.orderId);
o2.orderId = 1002;
System.out.println("o1.orderId = " + o1.orderId + ",o2.orderId = " + o2.orderId);
}
}
class Order{
int orderId;
}
public class ValueTransferTest2 {
public static void main(String[] args) {
Data data = new Data();
data.m = 10;
data.n = 20;
System.out.println("m = " + data.m + ", n = " + data.n);
// //交换m和n的值
// int temp = data.m;
// data.m = data.n;
// data.n = temp;
ValueTransferTest2 test = new ValueTransferTest2();
test.swap(data);
System.out.println("m = " + data.m + ", n = " + data.n);
}
public void swap(Data data) {
int temp = data.m;
data.m = data.n;
data.n = temp;
}
}
class Data{
int m;
int n;
}
public class B {
public static void main(String[] args) {
int a = 10;
int b = 10;
method(a,b);//需要在method方法被调用之后,仅打印出 a=100,b=200,
// 请写出method方法的代码
System.out.println("a="+a);
System.out.println("b="+b);
}
//代码编写处
public static void method(int a,int b) {
a = a*10;
b = b*20;
System.out.println(a);
System.out.println(b);
System.exit(0);
}
}
方法参数的值传递机制/* * 关于变量的赋值 * * 如果变量是基本数据类型,此时赋值的是变量所保存的数据值。 * 如果变量是引用数据类型,此时赋值的是变量所保存的数据的地址值。 * */public class ValueTransferTest { public static void main(String[] args) { int m = 10; int ...