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 沉淀.分享.成长,让自己和他人都能有所收获! 一.前言 你感受到的容易,一定有人为你承担不容易 这句话更像是描述生活的,许许多多的磕磕绊绊总 ...
随机推荐
- UVA 572 (dfs)
题意:找出一块地有多少油田.'@'表示油田.找到一块就全部标记. #include<cstdio> #define maxn 110 char s[maxn][maxn]; int n,m ...
- vim下打造python编辑器
在前面文章中介绍的关于vim基础插件之上加上一款专门为读写python程序的插件-Python-mode. 顾名思义,就是让vim在python模式下运行.这里介绍这款插件的功能以及如何使用. 本文主 ...
- 3-HOP: A High-Compression Indexing Scheme for Reachability Query
title: 3-HOP: A High-Compression Indexing Scheme for Reachability Query venue: SIGMOD'09 author: Ruo ...
- 数迹学——Asp.Net MVC4入门指南(5):从控制器访问数据模型
MovieController中的方法Index()代码,初认识,应该有很多理解错误的地方,暂时这么记忆吧,待随后修改 Index()代码: @model IEnumerable<MVCMovi ...
- BPF and eBPF linux
http://www.brendangregg.com/blog/2016-10-21/linux-efficient-profiler.html http://www.brendangregg.co ...
- o-sync-and-o-direct
https://lwn.net/Articles/457667/ https://lwn.net/Articles/457667/ https://lwn.net/Articles/457667/ h ...
- python-模块安装方法
python程序会使用很多模块,通常安装模块的方法是找到官方网站,选择合适的版本下载安装,很麻烦.为了简化安装第三方的模块,python提供了easy_install工具,只需要一条命令就可以安装合适 ...
- cPage分页源码,分享给大家,可作参考
cPage是asp.net分页控件,也可以叫做分页组件,更确切的应该叫做分页模块,也或者叫做分页通用代码. cPage,版本3.2,源码如下: using System; namespace cPag ...
- INF文件的安装/卸载命令
RunDll32 advpack.dll,LaunchINFSection C:\Windows\INF\Office~1.inf,Uninstall,5
- Socket Server-基于线程池的TCP服务器
了解线程池 在http://blog.csdn.net/ns_code/article/details/14105457(读书笔记一:TCP Socket)这篇博文中,服务器端采用的实现方式是:一个客 ...