黑马程序员技术交流社区

标题: 一早爬起来写的,equals()和toString()方法的理解 [打印本页]

作者: 黑马肖凯骏    时间: 2012-3-17 10:06
标题: 一早爬起来写的,equals()和toString()方法的理解

  1. package s316;

  2. /**
  3. * @author Administrator
  4. * 覆写object类中的equals()和toString()方法
  5. * toString()方法是Object类中打印时默认调用的方法,所以在输出时加与不加是一样的效果!
  6. *Object类中的equals()方法,用于比较两个对象
  7. */

  8. class Person
  9. {
  10. private  String name;
  11. private int age;
  12. Person(String name, int age)
  13. {
  14.   this.name=name;
  15.   this.age=age;
  16. }
  17. public boolean equals(Object obj)
  18. {
  19.   if(this==obj) return true;
  20.   if(!(obj instanceof Person)) return false;
  21.   Person per=(Person)obj;
  22.   if(per.name.equals(this.name) && (per.age==this.age)) return true;//此处调用的是String类中的比较方法,因为name是一个字符串
  23.   else return false;
  24. }
  25. public String toString()
  26. {
  27.   return "姓名:"+name+",年龄:"+age;
  28. }
  29. }
  30. public class DemoToString {
  31. public static void main(String[] args)
  32. {
  33.   Person per=new Person("xiao",30);
  34.   Person x=new Person("xiao",30);
  35.   System.out.println(per.equals(x));
  36.   System.out.println(per.equals("hello"));
  37. }

  38. }

复制代码

作者: 程旦    时间: 2012-3-17 10:15
嗯 受益匪浅 不错。。。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2