发表于: 2017-05-26 22:33:06

2 1181


今天完成的事情:

1.

和龚浩商量后把 查看用户邀请这个接口还原,后来又需要查看他人的邀请,改变接口形式,代码做了一点小改动之后,算是可以使用了。

2.

过往班级和当前班级的调整:

1.实体类增加字段:joinAt

2.数据库user_class_relation 增加字段:join_at,并填充数据,update_at 的数据填充

3.查询过往班级和当前班级,动态查询排序更改为按照加入班级时间排序

4.controller里面加入班级的时候更新join_at字段到当前时间。


3.

equals 和 “==”

  • 对于值对象,==比较的是两个对象的值
  • 对于引用对象,比较的是两个对象的地址

在基本类型上可以用“==”直接比较,但是== 比较的是对象的地址,即是不是同一个对象。所以在引用类型中不适合使用“==”来判断。

重写一个equals方法

Value类又两个变量:int i,String s

@Override
public boolean equals(Object o) {
if (this == o){
return false;
   }
if (o == null){
return false;
   }
if (getClass() != o.getClass()){
return false;
   }
Value obj = (Value) o;
   if (this.s == null){
if (((Value) o).s != null){
return false;
       }
}else if (!s.equals(((Value) o).s)){
return false;
   }
if (i != ((Value) o).i){
return false;
   }
return true;
}


但是hashCode方法没有重写,不是很了解,今天看一看

重写equals方法时需要重写hashCode方法,主要是针对Map、Set等集合类型的使用;

a: Map、Set等集合类型存放的对象必须是唯一的;

b: 集合类判断两个对象是否相等,是先判断equals是否相等,如果equals返回TRUE,还要再判断HashCode返回值是否ture,只有两者都返回ture,才认为该两个对象是相等的。

2、由于Object的hashCode返回的是对象的hash值,所以即使equals返回TRUE,集合也可能判定两个对象不等,所以必须重写hashCode方法,以保证当equals返回TRUE时,hashCode也返回Ture,这样才能使得集合中存放的对象唯一。


明天计划的事情:

1. 学习线程

遇到的问题:


收获:




返回列表 返回列表
评论

    分享到