根据老师上课的讲解及自己课下看的视频总结了一下基本概念。
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是能够排序的。
分享到:
相关推荐
#### 二、集合框架基础概念 ##### 1. 集合接口 集合框架中有六个核心接口,这些接口代表了不同的数据结构类型: - **`Collection`**:这是集合层次结构的根接口,所有具体的集合类都是它的实现类。 - **`Set`**...
本知识点整理以清华大学离散数学教材为蓝本,提炼出命题逻辑相关的关键概念,为理解和应用命题逻辑提供系统的知识框架。 首先,命题逻辑中定义了五个基本的逻辑运算符,分别是:否定(┐)、合取(∧)、析取(∨)...
4. **集合框架** - **List、Set、Queue**:掌握ArrayList、LinkedList、HashSet、TreeSet、LinkedList等常见集合类的特性和用途。 - **Map接口**:了解HashMap、TreeMap、LinkedHashMap等实现,以及键值对的存储...
这篇文档深入探讨了Java集合框架的实现机制及其相关概念,包括Collection、List、Set和Map等核心接口,以及它们的使用方法和实现原理。 1. 集合框架概述 集合框架是Java API中的一组接口和类,它为处理对象集合提供...
Java面试经验整理涉及了Java集合框架的核心知识点,特别是List、Set和Map三个接口及其子接口和实现类的特性、用途和性能比较。以下是对这部分内容的知识点总结: 1. Java集合框架结构 Java集合框架由Collection...
- **List容器**:Java中的集合框架之一,可以存储多个对象。 #### 实现思路: 1. **定义Employee类**:包含职工号、姓名和工资等属性。 2. **创建List容器**:存储`Employee`对象。 3. **查询工资**:遍历`List`...
### Java高级面试框架知识点整理 #### Struts框架详解 **1. Struts框架的基本结构** - **MVC模式实现:** Struts是一个基于MVC(Model-View-Controller)模式的Web应用框架,其中Controller部分主要由一个Servlet...
【C# .NET面试题整理集合】 在C#和.NET技术领域中,面试通常会涵盖以下几个核心知识点: 1. **基础语法与数据类型**:理解C#的基本语法,包括变量声明、常量、数据类型(如int、string、bool、float等)以及它们的...
Java核心知识点整理包含了Java编程语言中...这些知识点为Java开发者面试时可能会遇到的高频问题,涵盖了从JVM原理到集合框架的多方面知识。掌握这些知识点,将对理解Java程序的运行机制以及进行性能优化有着重要作用。
3. **集合框架**:Java集合框架包括List(ArrayList、LinkedList、Vector等)、Set(HashSet、LinkedHashSet、TreeSet等)和Map(HashMap、TreeMap、ConcurrentHashMap等)。理解它们的区别和使用场景至关重要。 4....
通过阅读这些源码,开发者可以深入了解Java集合框架的内部实现,包括如何处理哈希冲突、如何维护元素的排序、以及如何实现线程安全等核心概念。这对于提升编程技巧、优化代码以及解决实际问题具有重要意义。同时,这...
在Java集合框架中,Collection是整个集合框架的根接口,主要包括List和Set两种类型的集合。List是有序集合,允许重复元素;Set不允许重复元素。List接口下有两个常见的实现类LinkedList和ArrayList,以及Vector。...
以下是对Java框架整理的一些关键知识点: 1. **静态(static)与实例(his)依赖**: - `static` 关键字用于声明类级别的变量和方法,不依赖于类的实例,可以在没有创建对象的情况下直接调用。 - `his` 是实例...
本资料"JAVA高级知识点整理.rar"主要涵盖了多线程、虚拟机、Java IO/NIO以及Java集合框架等核心主题,旨在帮助开发者深入理解Java平台的高级特性和最佳实践。 首先,多线程是Java编程中的重要组成部分,它允许程序...
- Java集合框架中包含了多种集合类型,如List、Set、Map等,它们提供了存储、检索、排序和操作数据集的方法。 - 集合框架的源码分析是面试中的常见问题,尤其是对集合类的实现机制和性能特性的理解。 4. Java...
Java的基础知识包括语法、面向对象特性(封装、继承、多态)、异常处理、输入/输出流以及集合框架。了解基本类型、类、接口、包的概念是Java学习的起点。异常处理是程序中必不可少的部分,用于捕获和处理运行时错误...
Java作为一门广泛使用的编程语言,其知识框架涵盖了基础语法、面向对象编程、集合框架、多线程、网络编程、I/O流、异常处理、数据库操作、JVM优化等多个方面。以下是对这些领域的详细阐述: 一、Java基础语法 Java...
集合框架的"集合框架.pdf"将涵盖ArrayList、LinkedList、HashMap、HashSet、TreeMap等基础数据结构,以及泛型、迭代器、比较器等概念。求职者应能熟练运用这些集合,并了解其性能特点。 对于服务器端技术,"Tomcat...
这些学习笔记将带你深入了解Java的核心概念,特别是面向对象编程和集合框架。以下是对每个文件内容的详细阐述: 1. **Day0804_HashMap的基本使用.docx**:HashMap是Java集合框架中的一个重要组件,它提供了键值对的...
《Java学习笔记(必看经典).doc》则专注于Java编程,可能涵盖了类与对象、异常处理、集合框架、多线程、IO流、网络编程等内容。通过阅读和学习,你可以掌握Java的核心特性,这对于Java开发者来说至关重要。 《华为...