java众多操作符中“=”“==”“!=”是可以对对象进行操作的。
1。首先说“=“
”将一个对象赋值给另一个对象“实际是将引用从一个地方复制到另一个地方。
public class ObjectCopy {
public static void main(String[] args) {
TestObject o1 = new TestObject(55);
TestObject o2 = new TestObject(66);
System.out.println(o1.num);
System.out.println(o2.num);
o1 = o2;//将对象o2赋给o1
System.out.println(o1.num);
System.out.println(o2.num);
o1.num = 100;
System.out.println(o1.num);
System.out.println(o2.num);
}
}
class TestObject{
int num = -1;
public TestObject(int num){
this.num = num;
}
}
//输出结果:
55
66
66
66
100
100
初次输出为55,66.不必多言..将o2赋给o1后,其实是o1这个引用所指向的对象改变为o2那个引用所指的对象.所以输出的都是o2引用指向那个对象(当然现在的o1也指向那个对象),即66,66...之后o1,o2每个的操作多直接影响2个引用.即100,100
2.“==”“!=”操作的是对象的引用.
不操作内容,想要操作内容.覆写equals()方法.