zgb老师关于java集合的总结
数组:存多个数据 操作不便
集合(Collection ):存多个数据 管理多个数据 提供更为方便的操作
Iterator:专门针对集合 进行迭代
List:有序的 允许重复的元素
ArrayList:底层数组 从本质上看 和 数组没有区别 允许null 线程不安全 不擅长插入、删除 擅长 查询 遍历
Vector : 底层数组 线程安全
LinkedList:底层是链接列表 允许null 适合插入 、删除 不适合查询,遍历
Set:不包含重复元素 最多包含一个 null 元素
HashSet: 底层是哈希表 无序 允许使用 null 元素 线程不安全
TreeSet: 底层是树形结构 有大小序 通常都是放同一种类型,否则意义不明确
自然排序:Comparable 可比较性
比较器:Comparator 对集合排序
优先级:Comparator>Comparable
Map:存放一对一对的数据 K-V
***严格意义上不属于 collection ,但是因为map也是存放多个元素,所以口语中 依然把map 称之为map集合
HashMap: 允许使用 null 值和 null 键 key键通过hashSet维护
Hashtable :与HashMap雷同 除了非同步和允许使用 null 之外
TreeMap: key键是由treeSet维护
Collections:专门针对Collection 进行操作的一些方法 辅助类
什么叫相等:
equals:揭示了什么叫相等
Object类中equals 方法 指的是 指向同一个对象 才相等(x == y) ==比较地址
字符串定义了相等的规则:每个位置上字符都相等,这2个字符串才相等
*****通常情况下,如果比较相等,多数都要覆盖equals
hashCode: 值 是由对象在内存中的地址 然后 通过 哈希算法 计算出来的数字
在equals方法没有修改前提下:相等对象 即为 相同对象,所以哈希码值 相等,但是不相等对象,哈希码值 不要一定不等,
绝大多数情况下是不等的,在个别情况下 可能相等(哈希算法问题 -- 一个方程 2个解)
toString:返回该对象的字符串表示 应该是简明但易于读懂 不会对对象的数据和地址 带来任何变化
-------------------------------------------------------------
作业:
1.查阅API
2.完成员工管理系统(1,添加员工,2,查询所有员工 3,查询员工,4删除员工,5修改员工,6 退出) 员工存放在集合中
数据结构:数组 链表 哈希表 树 图
zgb老师关于java集合的总结的更多相关文章
- Java集合框架详细总结
一:Collection集合 呼~,历过好几天的奋战终于把集合框架肝完了,b站某马老师讲的是真的非常详细而且动听,原理给你分析得明明白白的,此前也找了许多关于集合这一大章节的视频,发现更多的是针对于使 ...
- Java集合专题总结(1):HashMap 和 HashTable 源码学习和面试总结
2017年的秋招彻底结束了,感觉Java上面的最常见的集合相关的问题就是hash--系列和一些常用并发集合和队列,堆等结合算法一起考察,不完全统计,本人经历:先后百度.唯品会.58同城.新浪微博.趣分 ...
- Scala集合和Java集合对应转换关系
作者:Syn良子 出处:http://www.cnblogs.com/cssdongl 转载请注明出处 用Scala编码的时候,经常会遇到scala集合和Java集合互相转换的case,特意mark一 ...
- java集合你了解多少?
用了java集合这么久,还没有系统的研究过java的集合结构,今天亲自画了下类图,总算有所收获. 一.所有集合都实现了Iterable接口. Iterable接口中包含一个抽象方法:Iterator& ...
- 深入java集合学习1-集合框架浅析
前言 集合是一种数据结构,在编程中是非常重要的.好的程序就是好的数据结构+好的算法.java中为我们实现了曾经在大学学过的数据结构与算法中提到的一些数据结构.如顺序表,链表,栈和堆等.Java 集合框 ...
- Java集合框架List,Map,Set等全面介绍
Java集合框架的基本接口/类层次结构: java.util.Collection [I]+--java.util.List [I] +--java.util.ArrayList [C] +- ...
- Java集合框架练习-计算表达式的值
最近在看<算法>这本书,正好看到一个计算表达式的问题,于是就打算写一下,也正好熟悉一下Java集合框架的使用,大致测试了一下,没啥问题. import java.util.*; /* * ...
- 【集合框架】Java集合框架综述
一.前言 现笔者打算做关于Java集合框架的教程,具体是打算分析Java源码,因为平时在写程序的过程中用Java集合特别频繁,但是对于里面一些具体的原理还没有进行很好的梳理,所以拟从源码的角度去熟悉梳 ...
- Java 集合框架
Java集合框架大致可以分为五个部分:List列表,Set集合.Map映射.迭代器.工具类 List 接口通常表示一个列表(数组.队列.链表 栈),其中的元素 可以重复 的是:ArrayList 和L ...
随机推荐
- 用Python+selenium打开IE浏览器和Chrome浏览器的问题
这几天在学Python+selenium自动化,对三大浏览器Firefox,Chrome和IE都做了尝试,也都分别下载了对应的webdriver,如:geckodriver.chromedriver. ...
- JNI传递字符串数组J-StringArray
编译器对语言的转换以寻地址的方式进行序列化和反序列化,因此对于不固定类型或者不显示给出大小的对象不能直接解析,所以没有出现jstringArray这样的类型,只能一个一个编写. 参考链接:安卓开发提高 ...
- Quartz+Topshelf 作业
小记: 引用Quartz.Topshelf.Topshelf.Quartz 使用方法: http://www.cnblogs.com/mushroom/p/4952461.html http://ww ...
- Tomcat jsp页面显示有问题
1.干掉tomcat下的work文件夹里面的东西,让jsp文件重新编译,相当于清楚缓存 2.work 里面是 jsp 编译的类 ,只要jsp 被访问了,就会被编译,就会生成相应的类 3.tomcat下 ...
- Day 25 面向对象
面向对象基础 面向对象编程 面向过程编程:类似于工厂的流水线 优点:逻辑清晰 缺点:扩展性差 面向对象编程:核心是对象二字,对象属性和方法的集合体,面向对象编程就是一堆对象交互 优点:扩展性强 缺点: ...
- eas之辅助编辑功能
copy.cut.paste// copytable.getEditHelper().copy();// cuttable.getEditHelper().cut();// pastetable.ge ...
- LINUX KERNEL SPINLOCK使用不当的后果
LINUX KERNEL SPINLOCK使用不当的后果 spinlock(自旋锁)是内核中最常见的锁,它的特点是:等待锁的过程中不休眠,而是占着CPU空转,优点是避免了上下文切换的开销,缺点是该CP ...
- Java 并行 (2): Monitor
转自:http://www.cnblogs.com/tomsheep/archive/2010/06/09/1754419.html 1. 什么是Monitor? Monitor其实是一种同步工具,也 ...
- JS 常用语法
通常,通过 JavaScript,您需要操作 HTML 元素. 1.通过 id 找到 HTML 元素 2.通过标签名找到 HTML 元素 3.通过类名找到 HTML 元素 提示:通过类名查找 HTML ...
- python-windows环境安装
windows下python环境安装 1. 先在官网上下载安装包,官网地址:https://www.python.org/ 点击windows,进入下载选择 选择python3.7.0,点击进入下载, ...