一、值传递问题
1.1 代码示例
@Getter
@Setter
@AllArgsConstructor
@NoArgsConstructor
class Person {
private String personName;
}
public class TransferValue {
public void changeValue1(int age) {
age = 30;
}
public void changeValue2(Person person) {
person.setPersonName("xxx");
}
public void chageValue3(String str) {
str = "xxx";
}
public static void main(String[] args) {
TransferValue test = new TransferValue();
int age = 20;
test.changeValue1(age);
System.out.println("age------" + age);
Person person = new Person("abc");
test.changeValue2(person);
System.out.println("personName-----" + person.getPersonName());
String str = "abc";
test.chageValue3(str);
System.out.println("String-----" + str);
}
}
1.2 传递常量
常量的copy,方法里面的常量,不会影响main方法里面的值