Java面试通关要点汇总集答案(七)——equals 与 == 的区别 List 和 Set 区别

207 阅读1分钟

一、equals 与 == 的区别

首先equals和== 最大的区别是一个是方法一个是运算符,在Java中,“==”和Object()类的equals比较的都是物理地址,而不是值的比较。但是equals方法可以被重写,比如String类里就是值的比较,就和==不一样了。
参考链接:
Java中==号与equals()方法的区别
Java 中 Equals和==的区别
如何“记住” equals 和 == 的区别?

二、List 和 Set 区别

(一) List

List集合代表一个元素有序、可重复的集合,集合中每个元素都有其对应的顺序索引。List集合允许使用重复元素,可以通过索引来访问指定位置的集合元素。List集合默认按元素的添加顺序设置元素索引。
实现类:
(1) ArrayList
(2) Vector
(3) LinkedList

(二) Set

Set集合类似于一个罐子,程序可以依次把多个对象“丢进”Set集合。Set集合与Collection基本相同,没有提供任何额外的方法。

  1. Set集合不允许包含相同的元素。
  2. Set集合通常不能记住元素的添加顺序(TreeSet除外)

实现类:
(1) HashSet
(2) TreeSet
(3) EnumSet

参考链接:
我们为什么要使用List和Set(List,Set详解)