Java集合类简单总结(重学)
java集合类简介(重学)
一.Collection(集合)、Map接口两者应该是平行关系吧。
1.Map介绍
Map是以键值(key-value)对来存放的,2个值。通过key来找到value(例:姓名-电话,通过姓名得到电话),通过Map创建的对象key都
不可以重复。 它的两个常用子类:HashMap类和HashTable类。
HashMap类:无序存放的,key不允许重复
HashTable类:无序存放,key不允许重复
key值可通过Map的方法keyset获取全部的key值,返回是个set集合;value的值可通过Map的方法values方法获取全部value的值。然后通过Iterator去遍历。
2.Collection(集合父接口)
Collection的子接口有(常用接口)一个值:List、Set、Queue等这三个接口 List接口和Set接口是Collection的子接口
(1)List接口:
List的内容是可以重复的,即可以有相同的值。例:添加(“A”)和(“A”)都是可以的 实现的常用的类有:ArraryList类和Vector类 ArraryList类是在JDK1.2推出的,采用异步处理方式,性能高,属于非线程安全的。 Vector类是在JDK1.0推出的,采用同步处理方式,性能低,属于线程安全的。
(2)Set接口:
不可以重复内容,但是可以排序,打断放入的顺序 它的两个常用子类:HashSet类和TreeSet类 HashSet类是散列存放的,不是按存储顺序存放的(比如输入是按字母顺序的,但输出就是随机了),是随机的,肯定不能排序了;
TreeSet类是有序存放的(比如按字母顺序输出的,虽然不是按字母顺序输入的),这个可以排序了。
二.Iterator接口:
集合输出的标准操作,只要是集合就用Iterator来输出,在Collection中提供了一个方法用来得到该迭代器的对象。 注意在用迭代器输出是不能用集合的remove移除集合中元素,否则会出现异常。

Java集合类简单总结(重学)的更多相关文章
- java 集合类简单的分析1
java中的集合类是很常见的,ArrayList,HashSet,HashMap等,现在就让我们来看下他们的各个类之间的关系图. Collection ├List │├Linke ...
- java集合类简单思维导图
- Java原来还可以这么学:如何搞定面试中必考的集合类
原创声明 本文作者:黄小斜 转载请务必在文章开头注明出处和作者. 系列文章介绍 本文是<五分钟学Java>系列文章的一篇 本系列文章主要围绕Java程序员必须掌握的核心技能,结合我个人三年 ...
- 重学 Java 设计模式:实战抽象工厂模式
作者:小傅哥 博客:https://bugstack.cn 沉淀.分享.成长,让自己和他人都能有所收获!
- 重学 Java 设计模式:实战单例模式
作者:小傅哥 博客:https://bugstack.cn 沉淀.分享.成长,让自己和他人都能有所收获! 一.前言 5个创建型模式的最后一个 在设计模式中按照不同的处理方式共包含三大类:创建型模式.结 ...
- 重学 Java 设计模式:实战适配器模式
作者:小傅哥 博客:https://bugstack.cn 沉淀.分享.成长,让自己和他人都能有所收获! 一.前言 擦屁屁纸80%的面积都是保护手的! 工作到3年左右很大一部分程序员都想提升自己的技术 ...
- 重学 Java 设计模式:实战桥接模式(多支付渠道「微信、支付宝」与多支付模式「刷脸、指纹」场景)
作者:小傅哥 博客:https://bugstack.cn - 编写系列原创专题文章 沉淀.分享.成长,让自己和他人都能有所收获! 一.前言 为什么你的代码那么多ifelse 同类的业务.同样的功能, ...
- 重学 Java 设计模式:实战装饰器模式(SSO单点登录功能扩展,增加拦截用户访问方法范围场景)
作者:小傅哥 博客:https://bugstack.cn 沉淀.分享.成长,让自己和他人都能有所收获! 一.前言 对于代码你有编程感觉吗 很多人写代码往往是没有编程感觉的,也就是除了可以把功能按照固 ...
- 重学 Java 设计模式:实战外观模式「基于SpringBoot开发门面模式中间件,统一控制接口白名单场景」
作者:小傅哥 博客:https://bugstack.cn 沉淀.分享.成长,让自己和他人都能有所收获! 一.前言 你感受到的容易,一定有人为你承担不容易 这句话更像是描述生活的,许许多多的磕磕绊绊总 ...
随机推荐
- 拓展Yii Framework(易框架)
1.拓展yii 此文针对Yii1.1.15而写,请注意甄别你的Yii Framework 版本. 拓展yii是开发期间常见的代码处理方式.例如,你写一个新的controller(业务控制器),你通过继 ...
- circular_buffer
编程有时需要使用定长的容器(fixed size container).实现旋转容器可以像下面这样: std::vector<T> vec(size); vec[i % size] = n ...
- 激!GSS系列
#include <cstdio> ; ; inline int max(int, int); inline int getint(); inline void putint(int); ...
- 关于AJAX中status中12030与12031的错误
最近使用ajax调用一般处理程序时,出现外网调用不成功,内网调用成功,错误码为12030或12301的情况.当时在网上搜索了一些资料,有的说是因为文件中取了个中文名称导致的,有的是说要配置什么IIS之 ...
- 从Eclipse转移到IntelliJ IDEA一点心得
http://www.ituring.com.cn/article/37792 本人使用IntelliJ IDEA其实并不太久,用了这段时间以后,觉得的确很是好用.刚刚从Eclipse转过来的很多人开 ...
- 如何对web.config进行加密和解密
http://blog.csdn.net/jf_jifei/article/details/6527390 在WEB网站开发过程中,如果我们将数据库连接字符串封装到.DLL文件中,将会给数据库和程序的 ...
- save_data
<?php /** * * $model 实例化表模型 * * $url 跳转地址 */ public function save_data($model,$url){ if(false === ...
- asp.net gridview 鼠标悬浮提示信息
使用场景: gridview绑定数据,某列数据太多,故超过一定字符,隐藏起来,同时鼠标移到指定列显示其明细信息: 知识点: 1,oderListTbl_DataBound事件中,添加,oderList ...
- 数据库MySQL基本语法思维导图
- 循环写入Insert 与 SqlBulkcopy
/* Insert by Loop */ cmd.CommandText = "insert into BizSharedStore (BizSharedStoreId,BizSharedI ...