A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

1. 为什么要重写HashCode和equals方法?
HashCode的重写可以根据元素内容生成一串数字在比较equals方法之前比较这串数字将极大提高运行效率;当HashCode生成的字符串相同时用重写equals方法来比较集合中的元素内容这样就能判断元素是否重复。

2.什么时候类中需要重写HashCode方法,什么时候不需要重写?
Set集合添加某一对象或元素就要对它是否重复进行比较,这时候就要重写HashCode方法,如果不需要判断元素内容就不需要调用它。

3.TreeSet集合的排序规则,有几种定义方式,两种有什么区别?
TreeSet集合的排序有两种:
1>自然排序:定义类实现Comparable接口,重写compareTo方法,方法中根据需求定义排序规则
2>比较器排序:可以在创建集合时,在集合的参数列表中定义TreeSet(Comparator<? super E> comparator) 构造一个新的空 TreeSet,它根据指定比较器进行排序。
4.泛型的作用和分类
泛型的出现解决了再编写代码时,无法确定参数类型的问题,使用它可以使类中的成员变量和方法更加的通用,也可以将运行期间的问题,提前到编译期。
它分为三种:
1>包含泛型的类:
定义方法:public class 类名<E>
2>包含泛型的方法:
定义方法:修饰符 <类型> 返回值类型 方法名(类型 变量名) { }
3>包含泛型的接口:
定义方法:interface 接口名<类型> { }

回复 使用道具 举报
1. 为什么要重写HashCode和equals方法?
HashCode的重写可以根据元素内容生成一串数字在比较equals方法之前比较这串数字将极大提高运行效率;当HashCode生成的字符串相同时用重写equals方法来比较集合中的元素内容这样就能判断元素是否重复。

2.什么时候类中需要重写HashCode方法,什么时候不需要重写?
Set集合添加某一对象或元素就要对它是否重复进行比较,这时候就要重写HashCode方法,如果不需要判断元素内容就不需要调用它。

3.TreeSet集合的排序规则,有几种定义方式,两种有什么区别?
TreeSet集合的排序有两种:
1>自然排序:定义类实现Comparable接口,重写compareTo方法,方法中根据需求定义排序规则
2>比较器排序:可以在创建集合时,在集合的参数列表中定义TreeSet(Comparator<? super E> comparator) 构造一个新的空 TreeSet,它根据指定比较器进行排序。

4.泛型的作用和分类
泛型的出现解决了再编写代码时,无法确定参数类型的问题,使用它可以使类中的成员变量和方法更加的通用,也可以将运行期间的问题,提前到编译期。
它分为三种:
1>包含泛型的类:
定义方法:public class 类名<E>
2>包含泛型的方法:
定义方法:修饰符 <类型> 返回值类型 方法名(类型 变量名) { }
3>包含泛型的接口:
定义方法:interface 接口名<类型> { }

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马