比较字符串是否相等使用equals方法
使用"=="与equals到底有哪些不同?
equals:可以比较内容,是2个字符串内容的比较。
==:数值比较,比较的是内存地址的值是否相等。
一个字符串就是String类的匿名对象。
String name1 = new String("wyq");->开辟了2个空间,其中一个是垃圾空间。
String name2 = "wyq";->开辟了一个空间,所以应该选择它。
String的另一个特殊之处:String使用了Java中的共享模式,它只要发现在内存中有这块数据,不会在内存中重新生成。
String类中的内容一旦声明则不可改变。
StringBuffer与String的本质区别,在于StringBuffer可以改变。
this可以调用本类中的属性,也可以调用本类中的方法(含构造方法this())。
注意:构造方法本身必须在首行被使用,为了给类中的属性初始化。
this调用属性、本类方法、构造方法这三点是this的基本应用,也是最常用的,但是以上三点实际上可以综合成一点---表示当前对象。
this表示当前对象主要应用在一点:用于进行对象的比较。
public boolean compare(Person p1){
boolean flag = false;
Person p2 = this;
if(p1.name.equals(p2.name)&&p1.age==p2.age)
{
flag = true;
}
return flag;
}
posted on 2009-12-08 09:56
王永庆 阅读(182)
评论(0) 编辑 收藏 所属分类:
J2SE