问答详情
源自:9-9 Java 中的 Object 类 Ⅱ

练习题的代码

创建两个手机对象,比较他们的尺寸大小cpu和内存大小,球程序代码???

提问者:慕仔7135344 2016-11-02 16:58

个回答

  • 千修罗
    2016-11-02 19:55:32
    已采纳

    public class Telephone {
    	  float Screen;
    	  float Cpu;
    	  float Mem;
    public Telephone(float Screen,float Cpu,float Mem){
    	  this.Screen = Screen;
    	  this.Cpu = Cpu;
    	  this.Mem = Mem;
      }
    public boolean equals(Object obj) {
    	if (this == obj)
    		return true;
    	if (obj == null)
    		return false;
    	if (getClass() != obj.getClass())
    		return false;
    	Telephone other = (Telephone) obj;
    	if (Float.floatToIntBits(Cpu) != Float.floatToIntBits(other.Cpu))
    		return false;
    	if (Float.floatToIntBits(Mem) != Float.floatToIntBits(other.Mem))
    		return false;
    	if (Float.floatToIntBits(Screen) != Float.floatToIntBits(other.Screen))
    		return false;
    	return true;
    } 
    public static void main(String[] args){
    	  Telephone t1 = new Telephone(3.5f,1.0f,1.5f);
    	  Telephone t2 = new Telephone(3.5f,1.0f,1.5f);
    	  if(t1.equals(t2)){
    		  System.out.println("两个手机完全相同");
    	  }
    	  else{
    		  System.out.println("两个手机不完全相同");
    	  }
    }
    }


  • 情非得以0
    2016-11-02 19:59:27

    Phone phone1=new Phone();

    Phone phone2=new Phone();

    if(Phone1.size==Phone2.size)

    System.out.println("尺寸相同");

    else

    System.out.println("尺寸不同");

    这是比较尺寸,同理可以比较CPU和内存大小;不过这种方法只能一个属性一个属性的比较,如果想直接将三种属性同时比较的话,就需要重写equals方法,在 source里面有重写equals方法的快捷方式,选择想比较的对象的哪些属性就勾选哪些属性,再直接用phone1.equals(phone2);来进行比较