本内容遵循CC 4.0 BY-SA版权协议 HashSet 大概是 Java 集合框架里最常用、也最容易让人产生"我懂了"错觉的类之一。背过八股文的都会说它底层是 HashMap、无序、不可重复,但真到面试官追问一句"HashSet 的 add 方法到底怎么实现的?扩容阈值为什么是 0.75?"或者线上 ...
Java集合框架中,Map和Set是最常用的两类容器,而HashSet与HashMap更是面试与工程实践的高频主角。很多人能背出“HashMap存键值对、HashSet存唯一元素”的表面区别,却未必理解其底层设计同源——HashSet内部其实就持有一个HashMap,元素被当作key存储,value统一为一个占位对象。判重机制依赖hashCode定位与 ...
This project explores essential Java programming concepts through practical implementations, progressing from individual programs to a menu-driven Student Record ...
Day 2/15 Today I'm covered core concepts of Java. -HashMap -hashCode () -equals () -Hash collisions -HashSet -ArrayList vs LinkedList -ConcurrentHashMap Now I'm implementing HashMap in DSA problems to ...
먼저 넣은 것부터 처리(큐), 나중에 넣은 것부터 처리(스택), 둘 다 ArrayDeque로 해결할 수 있습니다. 오래된 교재에 있는 Stack 클래스는 이제 사용하지 않습니다. 직접 만든 클래스를 HashSet이나 HashMap의 키로 넣을 때는 equals와 hashCode를 구현해야 합니다. 구현하지 ...
自分で作ったクラスを HashSet や HashMap のキーに入れるときは、equals と hashCode を実装する必要があります。実装していないと、中身が同じでも「別のもの」として2つ入ります。Java 16以降なら record を使うと自動で用意されます。