Java最新Java集合方面的面试题:Set集合是如何判断重复(1),java面试项目中的亮点

最后如何让自己一步步成为技术专家

说句实话,如果一个打工人不想提升自己,那便没有工作的意义,毕竟大家也没有到养老的年龄。

当你的技术在一步步贴近阿里p7水平的时候,毫无疑问你的薪资肯定会涨,同时你能学到更多更深的技术,交结到更厉害的大牛。

推荐一份Java架构之路必备的学习笔记,内容相当全面!!!

成年人的世界没有容易二字,前段时间刷抖音看到一个程序员连着加班两星期到半夜2点的视频。在这个行业若想要拿高薪除了提高硬实力别无他法。

你知道吗?现在有的应届生实习薪资都已经赶超开发5年的程序员了,实习薪资26K,30K,你没有紧迫感吗?做了这么多年还不如一个应届生,真的非常尴尬!

进了这个行业就不要把没时间学习当借口,这个行业就是要不断学习,不然就只能被裁员。所以,抓紧时间投资自己,多学点技术,眼前困难,往后轻松!

【关注】+【转发】+【点赞】支持我!创作不易!

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

2 //请注意实现了Comparable接口

3 class Student implements Comparable{

4 private int id;

5 public Student(int id){ this.id = id; }

6 public int getId()

7 {return id;}

8 //判断是否相等

9 public boolean equals(Student stu)

10 {

11 if( stu.getId() == this.id )

12 { return true; }

13 else { return false; }

14 }

15 //通过重写compareTo方法,判断是否能加入Set里

16 public int compareTo(Object obj) {

17 // 判断是否是学生类型

18 if (obj instanceof Student) {

19 Student s = (Student) obj;

20 // 如果是学生类型,如果学号相等,则不加入Set

21 if (s.getId() == this.getId()) {

22 return 0;

23 } else {

24 return s.getId()>this.getId()?1:-1;

25 }

26 // 不是学生类型对象的话就不要加入它

27 } else { return 0; }

28 }

29 }

从第3到29行,我们定义了一个Student类,为了把它放入Set,我们需要实现Comparable接口,并重写其中的compareTo方法。

从第9到14行,我们重写了用于判断两个Student对象是否相等的equals方法,如果不写,将用Object的方法(这个方法是通过判断两个对象的地址是否一致来判断两个对象是否相等)。

TreeSet对象不会根据equals方法判断是否重复,也就是说,即使我们注释掉了这个方法,不会影响到运行结果,但在自定义类里,重写equals方法是个很好的习惯。

在第16行到28行的compareTo方法里,我们将根据返回int类型的值,执行对应的动作。

如果返回0,则表示该对象已经存在于Set里了,这个对象无法再次加入。

如果返回1或-1,则表示Set里还没有和它相同的对象,可以加入。具体的1和-1的差别将在后继讲述“Collections排序”时详细分析。

30 public class SetDupDemo {

31 public static void main(String[] args) {

32 Set intSet = new HashSet();

33 intSet.add(1);

34 intSet.add(1);

35 System.out.println(intSet.size()); //输出结果是1

36 Student s1 = new Student(1);

37 Student s2 = new Student(1);

38 Set stuSet = new TreeSet();

39 stuSet.add(s1);

最后

即使是面试跳槽,那也是一个学习的过程。只有全面的复习,才能让我们更好的充实自己,武装自己,为自己的面试之路不再坎坷!今天就给大家分享一个Github上全面的Java面试题大全,就是这份面试大全助我拿下大厂Offer,月薪提至30K!

我也是第一时间分享出来给大家,希望可以帮助大家都能去往自己心仪的大厂!为金三银四做准备!
一共有20个知识点专题,分别是:

Dubbo面试专题

JVM面试专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

Java并发面试专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

Kafka面试专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

MongDB面试专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

MyBatis面试专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

MySQL面试专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

Netty面试专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

RabbitMQ面试专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

Redis面试专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

Spring Cloud面试专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

SpringBoot面试专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

zookeeper面试专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

常见面试算法题汇总专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

计算机网络基础专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

设计模式专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

ING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】](https://bbs.csdn.net/forums/4f45ff00ff254613a03fab5e56a57acb)收录**

需要这份系统化的资料的朋友,可以点击这里获取

  • 21
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值