Las clases de empaquetado de tipos de datos básicos en java también son de transferencia de valor , tales como: Boolean, Integer y otras clases de empaque y clases de cadena , toman transferencia de valor , estas clases pueden entenderse como clases inmutables eternas .
Cargue directamente el código y las capturas de pantalla:
Caso 1
public void handle(int parm1, Integer parm2, double parm3, Double parm4) {
System.out.println("形参parm1=" + parm1 + ",形参parm2=" + parm2 + ",形参parm3=" + parm3 + ",形参parm4=" + parm4);
parm1 = 12;
parm2 = 16;
parm3 = 27.98;
parm4 = 168.92;
System.out.println("形参parm1=" + parm1 + ",形参parm2=" + parm2 + ",形参parm3=" + parm3 + ",形参parm4=" + parm4);
}
public static void main(String[] args) {
User user = new User();
int a = 67; //基本数据类型
Integer b = new Integer(23); //引用数据类型
double c = 92.53; //基本数据类型
Double d = new Double(56.34); //引用数据类型
System.out.println("实参a=" + a + ",实参b=" + b + ",实参c=" + c + ",实d=" + d);
user.handle(a, b, c, d);
System.out.println("实参a=" + a + ",实参b=" + b + ",实参c=" + c + ",实d=" + d);
}
Los resultados de la operación son los siguientes:
Caso 2
public void handle(boolean parm1, Boolean parm2) {
System.out.println("形参parm1=" + parm1 + ",形参parm2=" + parm2);
parm1 = true;
parm2 = true;
System.out.println("形参parm1=" + parm1 + ",形参parm2=" + parm2);
}
public static void main(String[] args) {
User user = new User();
boolean e = false; //基本数据类型
Boolean f = new Boolean(false); //引用数据类型
System.out.println("实参e=" + e + ",实参f=" + f);
user.handle(e, f);
System.out.println("实参e=" + e + ",实参f=" + f);
}
Los resultados de la operación son los siguientes: