Set
无序不重复,遍历只能使用迭代器或增强for循环(对java编译器而言,等价)。
1)hashSet:用hash表实现;
2)TreeSet:用排序二叉树实现;
当通过contains方法判断set集合中是否包含某个对象时,需要首先根据该对象的hashCode值索引到特定的空间,然后再和空间中的对象调用equals方法进行比较。这种针对性的查找方式不同于线性表的逐个比较,有较高的效率。
对于重写equals方法的对象,一般要妥善重写继承自object类的hashCode方法(),不然有可能值相等的两个对象,equals对比后,返回为false.如:
Point p1 = new Point(1,2);
Point p2 = new Point(1,2);

如果没有妥善写好hashCode方法,p1和p2的hashCode值可能不等,那它们就根本没有比较的机会。

待续...

Java数据结构学习相关推荐

  1. Java数据结构学习笔记

    Java数据结构 枚举(Enumeration)/位集合(BitSet)/向量(Vector)/栈(Stack)/字典(Dictionary)/哈希表(Hashtable)/属性(Properties ...

  2. Java数据结构学习——排序二叉树

    目录 前言 正文 排序二叉树的特点 插入节点 删除树节点 删除的节点是叶子节点 删除的节点存在左或者右子节点 删除的节点存在左右两子节点 遍历节点 先序遍历 中序遍历 后续遍历 全部代码展示 总结 前 ...

  3. java数据结构学习笔记-二叉树前、中、后序遍历

    public class BinaryTreeDemo {public static void main(String args[]){Employee emp1= new Employee(1,&q ...

  4. Java 数据结构笔记

    Java 数据结构学习笔记 一.线性结构 (一)常见线性结构 数组 队列 链表 栈 (二)线性结构特点 线性结构作为最常用的数据结构,其特点是数据元素之间存在一对一的线性关系 线性结构有两种不同的存储 ...

  5. 大话数据结构及JAVA数据结构阅读笔记

    目录 一.大话数据结构随书阅读笔记 第一章 数据结构概述 第二章  算法概述 第三章 线性表 第四章 栈与队列 第五章 串 第六章 树 第七章 图 第八章 查找 第九章 排序 二.大话数据结构思维导图 ...

  6. 基于java的数据结构学习——数组实现的栈以及简单应用C++实现

    基于java的数据结构学习--数组实现的栈以及简单应用的 C++ 实现 源码: // // Created by PC-Saw on 2019/1/3. //#ifndef DATA_STRUCTUR ...

  7. Java数据结构与算法学习 目前30170字

    文章借鉴于[尚硅谷]数据结构与算法(Java数据结构与算法),在内容方面会做更改,但是核心依然是他们的学习视频.在这里声明. 1. 线性结构和非线性结构 1.1 线性结构 数据结构包括两大部分,一个叫 ...

  8. Java培训学习步骤有哪些

    最近几年,有很多学习java技术的同学都有过半途而废的想法,认为java零基础是很难学会的,其实出现这样的问题,最主要的原因就是学习方法有问题,下面小编整理的Java培训学习步骤,希望能够帮助大家更有 ...

  9. Java入门学习注意事项有哪些?

    想要学好java技术,做好学习规划路线和注意事项是非常重要的,尤其是零基础学员,Java涉及到的知识点非常多,我们需要制定合理的Java学习路线图,这样会事半功倍,下面小编和大家总结一下Java入门学 ...

最新文章

  1. 了解Exchange server 2010角色
  2. Debian中几个bash初始化脚本使用区别--【转载】
  3. oracle结构设计
  4. 在非托管对象中使用Spring托管Bean
  5. 给plt.axvline设置图例(label)
  6. docker 安装
  7. 5.1 损坏联机日志的恢复方法
  8. 【树状数组+离线查询】HDU 3333 Turing Tree
  9. 在dom最前面插入_虚拟 DOM 到底是什么?
  10. linux下把进程注册成服务,用service 调用
  11. 离散数学第二版屈婉玲教材pdf_离散数学 第二版 [屈婉玲,耿素云,张立昂 编著] 2015年版...
  12. 轮播图背景图铺满整个div
  13. java基于springboot校园办公室报修管理系统
  14. 计算机专业职业规划英语小作文,五年职业规划英语作文
  15. 使用proteus仿真STM32超声波SRF04测距!Code+Proteus
  16. 中国交通标志牌数据集TT1OOK中的类别ID及其图标罗列以及含义详细介绍
  17. Win7下安装Ubuntu16.04成双系统
  18. 【计组】字长、数据总线、地址总线
  19. 单点登录涉及的技术点
  20. 修改方维分享系统注册页面的标题

热门文章

  1. C语言(C++)如何给字符数组赋值
  2. opengl 绘制房间 卧室 :桌椅板凳+床+衣柜
  3. CPU多核心和单核心有哪些区别?
  4. cat,more,less,head,tail命令用法详解
  5. tanh Function
  6. 2021谷饶中学高考成绩查询,谷饶中学录取分数线出炉,快来看!
  7. Markdown--PDF--PPT--Flash 工具链
  8. 中小企业OA系统如何选型?
  9. 在线html布局工具,HTML 布局
  10. 电商直播必备——直播设备清单