java中的赋值问题?

2025-03-09 10:54:52
推荐回答(3个)
回答1:

要向对象b1,b2中传值需要写a类的构造函数,用构造函数传值.

要比较对象b1,b2中的值是否相等,需要在a类中重写equals函数.

完整的改写后的a类的Java程序如下

class a {

 String name;

 a(String name){

  this.name=name;

 }

 public boolean equals(Object obj){

  a e=(a)obj;

  if (name == null) {

   if (e.name != null)

     return false;

  } else if (!name.equals(e.name))

   return false;

   return true;

 }

 public static void main(String[] args) {

  String a1="1",a2="1";

  System.out.println(a1.equals(a2));

  a b1=new a("Jack");

  a b2=new a("Jack");

  System.out.println(b1.equals(b2));

 }

}

源代码

运行结果

回答2:

可以重新equals方法,就是把这段代码放到a类里
public boolean equals(Object obj)
{

return obj instanceof a;

}
加上这个就是返回true

回答3:

你好,可以在类a中重写Object类的equals方法来实现。
如果有帮助到你,请点击采纳。
我解答的大部分是软件开发新人遇到的问题,如果有兴趣可以关注我。