如何检查两个实例在android中具有相同的值?

时间:2017-04-01 18:13:09

标签: java android

如何在android中检查2个相同类的实例是否相同?

代码如下

class Address{
    int id;
    String name;
    String street;
    City city;
    State state;
    List<Language> languages;
}
class City{
    int cityId;
    String cityName;
}
class State{
    int stateId;
    String stateName;
}
class Language{
    int langId,
    String langName;
}

class MainActivity extends Activity{

    @Override
    protected void onCreate(Bundle savedInstanceState) {
    .
    .
    .
    Address address1=new Address();
    .
    .
    Address address2=new Address();
    .
    .
    .

    **check address1 and address2 are having same values**
    .
    .
    .

    }

}

请告诉我检查 address1 address2 实例的最佳方法是否具有相同的值。

感谢。

2 个答案:

答案 0 :(得分:1)

您可以覆盖Address类的equals()方法,然后在该方法中,如果值相同则返回true,否则返回false。 更多细节: http://www.leepoint.net/data/expressions/22compareobjects.html

答案 1 :(得分:0)

您可以逐个比较每个值

public bool compare(Addess a1, Address a2){

    if (a1.attribute1.equals(a2.attribute)){

       if(a1.attribute2.equals(a2.attribute)){
            // do this for all attributes
            return true;
        }

        return false;
}