`
Sunflower-13
  • 浏览: 72817 次
  • 性别: Icon_minigender_2
  • 来自: 长沙
社区版块
存档分类
最新评论

集合框架概念整理

阅读更多
根据老师上课的讲解及自己课下看的视频总结了一下基本概念。
1.在集合框架产生之前处理对象组的方法:
(1)数组的特点
一维数组:线性的 、长度固定的 、有下标、内存地址连续的[读取速度快]
二维数组:线性的 、长度固定的 、有下标、内存地址连续的[读取速度快]
动态数组 :线性的 、长度可变的 、有下标、内存地址连续的 [查找数据比较快,插入删除比较慢]
链式列表 :线性的 、长度可变的 、内存地址随机的 [插入删除比较快,查找数据比较慢]


(2)系统提供的类:Vector、 Stack 、Properties
缺点:缺乏统一的操作方式,不易扩展。


2.集合框架:java中的集合框架是java.util包中提供的一系列工具,为程序处理对象组提供了标准的方式。其优点是:使性能提高、操作统一、提高了扩展性。诞生自1.2版本。


3.常用的接口及实现类介绍
(1) Collection 表示一组对象,这些对象也称为 collection 的元素。集合指的是Collection: 一组对象的父类,不包含map。但集合框架包括map:存储的是一组成对的数据。
Collection实现的接口有:List,Set,Queue。
Set包括的实现类:HashSet、LinkedList、TreeSet。
List包括的实现类:ArrayList、Vector、LinkedList。
Queue包括的实现类:LinkedList、PriorityQueue。


(2)List:此接口的用户可以对列表中每个元素的插入位置进行精确地控制。用户可以根据元素的整数索引(在列表中的位置)访问元素,并搜索列表中的元素。
特点:以列表形式存储的集合,允许重复元素。


ArrayList : 动态数组 [内存地址连续]
LinkedList : 链表 [可以作为栈,队列和双端队列使用]
Vector:动态数组 [主要用在多线程中]
       【Stack       栈 [先进后出]】


(3)Set:不允许出现相同的元素。
HashSet :通过散列的机制将信息存储到哈希表、且不能保证集合的顺序但其存储速度特别快。
TreeSet [排序集合] :要放入TreeSet中的数据必须是可以排序的。


(4)Queue :[了解]
PriorityQueue  排序队列[优先级队列]
主要方法: 插入数据到队列 add(E e)
移除队列的头  poll()
PriorityBlockingQueue  阻塞队列[同步队列,用在多线程中]
主要方法: 插入数据到队列 add(E e)
移除队列的头  poll()


4.迭代器:用来遍历集合中的元素,通过使用迭代器可以将遍历与数据分离。Iterator方法就是用来遍历集合中的元素对象。

(1)迭代器的使用:while(it.hasNext()){
System.out.println(it.next());
}


(2)for-each遍历集合:使用于所有集合、语法格式简单。
for(String s:set){
System.out.println(s);
}


5. Map接口:表示一组键值对: Map (key,value) ,每一组数据都是一个键值对, 所有的键是一个Set,每一个键对应一个唯一的值,Map的键是不能重复的,值是可重复的。

(1)HashMap:基是于哈希表的 Map 接口的实现。此类不保证映射的顺序,特别是它不保证该顺序恒久不变。 注意,此实现不是同步的。
 
(2)TreeMap:通过树结构来实现Map接口,TreeMap保证了映射按照升序顺序排列key,支持快速查找,且必须保证所传入的key是能够排序的。
0
2
分享到:
评论
2 楼 Sunflower-13 2016-08-19  
hellotieye 写道
好好学  

谢谢你 满满的正能量 
1 楼 hellotieye 2016-08-19  
好好学  

相关推荐

    JAVA面试常见问题整理

    在Java集合框架方面,文章介绍了List、Set和Map的区别和特点,以及它们的使用场景。接下来,文章重点讲解了ConcurrentHashMap的原理和实现方式,以及ThreadLocal的原理和使用场景。 最后,文章简要概述了Spring框架...

    优秀的CSS 框架整理

    什么是框架?框架是一种你能够使用在你的web项目中概念上的结构。CSS框架一般是CSS文件的集合,包括基本风格的字体排版,表单样式,表格布局等等

    Java八股文的面试题

    Java集合框架(JCF): Java集合框架提供了一套性能优化的接口和类,用于存储和处理数据集合,如List、Set、Map等。 多线程和并发: Java支持多线程编程,允许同时执行多个任务。Java中的并发编程机制包括线程、同步、...

    Java后端面试手册-Java基础知识

    Java基础知识:包括Java语言特性、面向对象编程、集合框架、异常处理等基础知识点。 数据库和SQL:涵盖数据库基础知识、SQL语句的编写和优化、数据库事务等相关内容。 Web开发:包括常用的Web开发框架(如Spring、...

    Java面试文档压缩包

    常见Java面试问题:这些文档列出了常见的Java面试问题及其答案,包括基础问题、算法与数据结构、多线程、集合框架等。通过研读这些问题,您可以增加对Java面试可能涉及的各个领域的了解。 Java核心知识点总结:这些...

    JAVA_Thinking in Java(中文版 由yyc,spirit整理).chm

    JAVA_Thinking in Java(中文版 由yyc,spirit整理).chm ------------------------------------------------- 本教程由yyc,spirit整理 ------------------------------------------------- “Thinking in Java...

    智能制造基本概念解读.doc

    为此本人查阅了相 关资料,并将学习过程中的摘录及笔记整理成本文,以供大家进行概念普及。由于时间 紧迫、资料有限,错误及疏漏难免,望大家积极反馈(hhp@yonyou。com),以便及时修 正。 1。 智能制造的概念 2015...

    WCF分布式开发步步为赢.pdf

    1.WCF分布式框架基础概念 2.自定义托管宿主WCF解决方案开发配置过程详解 3.WCF服务元数据交换、配置及编程开发 4.WCF服务可靠性传输配置与编程开发 5.服务契约与操作重载 6.WCF服务契约继承与分解设计 7.WCF数据...

    免费超全面的Java基础类型,容器,并发,IO流,面向对象,Web编程等代码总结

    基本数据类型,核心点整理 特殊的String类,以及相关扩展API 日期与时间API详解 流程控制语句,和算法应用 函数式编程概念和应用 集合容器 基于分析列表集合源码体系 基于分析地图集合源码体系 IO流机制 IO流核心...

    数据库管理系统重要知识点整理.doc

    11数据字典是各类数据描述的集合,它是进行详细的数据收集和数据分析后所获得的主 要成果。包括数据项、数据结构、数据流、数据存储、处理过程。 12三种数据抽象方法:分类、聚集和概括。 13逻辑结构设计的任务就是...

    Thinking in Java(中文版 由yyc,spirit整理).chm

    本教程由yyc,spirit整理 ------------------------------------------------- “Thinking in Java”详细目录   写在前面的话 引言 1. 前提 2. Java的学习 3. 目标 4. 联机文档 5. 章节 6. 练习 7. 多媒体CD...

    leetcode中国-myJavaNote:自己的java积累

    Java基础,Java虚拟机,Java多线程,并发工具类,Java集合框架、部分源码等。 数据库 主要针对MySQL数据库进行总结,设计数据库索引、数据库事务、数据库并发控制、主从同步等。还有一些SQL语句。 计算机网络 计算机...

    Java学习笔记-个人整理的

    {2.8}框架中移动的小球}{59}{section.2.8} {2.9}抽象与接口}{59}{section.2.9} {2.10}访问控制}{60}{section.2.10} {2.10.1}类的属性}{60}{subsection.2.10.1} {2.10.2}类的方法}{61}{subsection.2.10.2} {...

    JAVA核心知识点整理(有效)

    标记整理算法(Mark-Compact).................................................................................................. 28 分代收集算法 ..............................................................

    传智播客扫地僧视频讲义源码

    12_构造和析构的重点整理 13_构造和析构总结 14_中午课程复习 15_构造函数的调用规则研究 16_浅拷贝问题抛出 17_浅拷贝问题分析_传智扫地僧 18_浅拷贝问题解决_深拷贝_显示编写拷贝构造函数 19_深拷贝和浅拷贝_默认...

    五种大数据架构简介.pdf

    五种⼤数据架构简介 ⼤数据是收集、整理、处理⼤容量数据集,并从中获得见解所需的⾮传统战略和技术的总称。虽然处理数据所需的计算能⼒或存储容量早已 超过⼀台计算机的上限,但这种计算类型的普遍性、规模,以及...

    python入门到高级全栈工程师培训 第3期 附课件代码

    03 web框架的概念 04 做一个最简答web框架 05 MVC模式和MTV模式 06 django的一个简单应用 07 django静态文件之static 08 django的url控制系统 09 django的urlConf补充 第50章 01 django之视图函数的介绍 02 django...

    基于经典领域驱动设计的权限管理系统 .zip

    【实例简介】 项目采用经典DDD架构(用沃恩....当然,如果你想学习完整的DDD框架,可以参考我的另一个项目(BestQ&A--开源中国推荐项目/集CQRS AES等DDD高级特性于一体的问答系统) 【实例截图】

    asp.net知识库

    完整的在.net后台执行javascript脚本集合 ASP.NET 中的正则表达式 常用的匹配正则表达式和实例 经典正则表达式 delegate vs. event 我是谁?[C#] 表达式计算引擎 正式发布表达式计算引擎WfcExp V0.9(附源码) 运算...

Global site tag (gtag.js) - Google Analytics