学习java,入门语言java的感概
1 看java集合有一段时间了。
跟着网络中视频开始看的,从开始 视频部分中的数据结构开始,老师讲栈、队列、数组和链表,还有红黑树。
现在想,在集合中讲数据结构是有其道理。
视频中,老师讲这些数据结构,没有讲具体的敲代码实现。
而是告诉了我,这些数据结构的特点;
2 接着,讲List集合和Set集合。
然后,老师视频中,让我们看代码文档,告诉我,list集合中arraylist底层是数组,linkedlist底层是链表。
这样,知道底层实现的数据结构是如何实现的。
就可以根据需要选择使用哪个集合。
这样,数据结构的知识就落地了。
现在,由说了list集合和set集合的特点。
3 为何Set集合不能存储重复数据呢
补充HashSet底层实现是哈希表。
Set集合在调用add方法的时候,add方法会调用元素的hashCode方法和equals方法,判断元素是否重复。
这是Set集合存储元素不重复元素的原理。
前提:存储的元素必须重写hachCode方法和equal方法
4 String和Integer,都是Java语言内建的类型。(就是已经定义好了)
Java帮它们重写了hashCode和equals方法。
在HashSet中存放自定义类型元素时,也需要重写对象中的hashCode和equals方法,建立自己的比较方式,才能保证HashSet集合的对象唯一。