collection
collection接口是集合框架的最父类
接口,定义了一些最共性的方法;
例如:add (); remove(); isEmpty(); size(); clear(); contains();
addAll(); containsAll(); removeAll();删除所有相同元素 retainAll();保留所有相同元素
注:带有All的方法传入的参数基本都是集合;
Iterator
Iterator是集合的迭代器对象;抽取了所有集合的取出的共性(一个一个的取出);
Iterator中只有三个方法:hasNest(); next(); remove();
集合中会有iterator()方法来获取集合迭代器对象。
例如:
Iterator it = coll.iterator();
for(Iterator it = coll.iterator() ; it.hasNext(); ){ //开发时使用这for循环个迭代。
}
集合框架细节:
集合中存入基本数据类型时基本数据类型自动装箱。
集合中存储的是对象的引用。
集合执行add()方法后,存入的类型提升为Object,取出后应当强转。(可以使用泛型解决强转问题)
List集合:
特点是:带索引,元素可以重复,操作都是基于索引来的;
List中有一个特殊的迭代器:ListIterator 可以在迭代过程中修改元素。
//List 集合中含有一个 listIterator(); 用于获取Iterator对象
ListIteraoor it = new ListIterator()
LinkedList集合:
特点:数据结构是链表, 增加删除比较快, 查询比较慢; 不同步
LinkedList集合中的方法基本都是针对链表的头/尾来操作的,所以可以用于实现堆栈,队列数据结构;
ArrayList集合:
特点:可增长的数组结构,查询快,增删慢; 不同步
ArrayList集合中的方法针对索引操作;
Set集合:
特点:无重复元素,但是不保证元素的顺序(输入和输出的一致性);
HashSet集合:
特点:使用了Hash表的Set集合;
注意: 1:出入元素时首先判断元素对象的hasfCode()函数返回结果是否一致;
2:然后判断对象的equals()函数的返回值是否一致;
##如果hashCode()和equals()判断都一致--->元素是相同的;
####如果存入的自定义的数据类型,并需要按照特定的元素一致标准:
在自定义对象中复写 hashCode(),和equals();可以使用ctel+alt+s选中自动添加
TreeSet集合:
特点:集合内部实现了排序,使用的二叉树结构
TerrSet使用add()函数时会对元素进行排序,内部实现会对元素进行排序时:
将需要存入的对象转为Comparable类型然后使用compareTo()方法进行对象的比较大小;
需求:需要对存入TreeSet集合的自定义的对象进行自定义排序算法:
1:(自然排序)将自定义对象实现Comparable接口并复写compareTo()方法;
注意:复写compareTo()方法时需要 判断主要条件后判断次要条件,最终判断大小;
2:(比较器排序)在定义TreeSet集合时在构造函数中传入一个自定义的比较器对象;
首先定义自己的比较器类,实现Comparator接口并重写compare()方法,将Comparator子类对象传入TreeSet构造函数中;
自然排序接口: Comparable接口,compareTo()方法; 使用在被排序的类上;
比较器接口: Comparator接口,compare()方法; 使用在自定义的比较器类;
public int compare(Object o1,Object o2){
String s1 = (String )o1;
String s2 = (String )o2;
int temp = s1.lenth()-s2.length(); //判断主要条件
return temp == 0 ? s1.compareTo(s2) : temp; //判断次要条件
}
LinkedHashSet集合:
特点:查询效率高,存储的内容有序(存入取出一致)唯一;
Linked-->存入有序; Hash-->查询高效 Set-->元素唯一 Tree-->元素以排序 list-->含有索引
Map集合:
Map<String,String> map = new Map<String,String>();
添加并返回:String s = map.put("星期一","monday"); //返回前一个
查询并返回:String value = map.get("星期一");
删除并返回:String s = map.remove("星期一");
.........
###两种返回Map集合的方法:
1:使用Map集合的keySet(); 返回Map集合中的所有Key值到Set集合中; 遍历含有key的Set集合
//获取存放key值得Set集合
Set<String> keys = map.keyset();
//获取Set集合的迭代器
Iterator<String> it = keys.iterator();
//迭代获取key值,配合get();取出value值
2:使用Map集合的entrySet()方法获得Map.Entry()对象的Set集合。 遍历含有Map.Entry对象的Set集合
Map.Entry类型是Map集合的内部类,是Map的映射关系的对象
//获取存放Map.entery的set集合
Set<map.Entry<String,String>> entrySet = map.entrySet();
//获取Set集合的迭代器,迭代取处Map.Entry
Iterator<map.Entry<String,String>> it = entrySet.iterator();
//接下来使用Map.Entry 的方法取出key ,value;
keySet() ----> key的Set集合
map.enrtySet() -----> Map.entry的Set集合
COllections工具类
Collections工具类里面包含了一些针对集合操作的方法,在操作集合时需要方法时可以去看;
里面有一些很重要的方法:
例如:
Collections.syschronizedList()方法 为ArrayList等集合加锁;
List list = Collections.syschronizedList(new ArrayList(.....));
对排序逆序
求集合元素的最值
Arrays工具类
用于操作数组的工具类
代表方法有 数组转集合函数 可以使用集合的方法操作数组
int [] arr = new int{2,5,6,7,26};
List list = Arrays.asList(Arr);
数组转集合函数中,得到的集合的长度是固定长度的(由于数组的长度是不可变的)
使用asList时: 如果数组中的元素是基本数据类型--->集合中存入的是数组对象;
如果数组中存放的是引用数据类型---->集合中存放的是由数组中的对象转成的集合元素;
相关推荐
本总结图详细而全面地涵盖了Java集合框架的主要概念和组件,对于初学者和有经验的开发人员来说都是一个宝贵的资源。 在Java集合框架中,主要有两种类型的容器:集合(Collection)和映射(Map)。集合是用来存储一...
本篇文章将对Java集合框架进行深入的总结,包括其核心接口、类以及常用方法。 1. **集合框架概述** Java集合框架的核心接口主要有两个:`Collection`和`Map`。`Collection`接口是所有单值容器的基接口,如`List`、...
Java集合框架是Java编程语言中用于存储和操作对象数组的一个核心组件。这个框架提供了一种标准的...在设计和实现复杂的系统时,掌握集合框架的知识是至关重要的,因为它能够简化数据管理并提高代码的可读性和可维护性。
java集合框架的知识总结,内含代码讲解,知识点概括,带你更好理解java集合框架。。。。像Map集合的概念,遍历方式等
### Java集合框架总结 在Java编程中,集合框架(Collections Framework)是处理数据的重要工具集,它提供了一系列接口和类来存储、操作和检索不同类型的元素。本文将深入解析Java集合框架的关键知识点,涵盖其核心...
下面是 Java 集合框架的知识点总结: 1. Java 集合类主要有两大分支:Collection 接口和 Map 接口。Collection 接口实现了 iterator 接口,用于遍历集合中元素的接口,主要有 hasNext()、next() 和 remove() 三个...
根据提供的文档内容,文件是关于Java集合框架的面试题知识点总结。以下是Java集合框架的知识点详述: Java集合框架主要包括Collection接口和Map接口两大分支。Collection接口主要包括List、Set以及Queue三个子接口...
Java 集合框架知识点总览 Java 集合框架是 Java 语言中提供的一种处理集合的机制,它提供了一种灵活、可靠、可扩展的方式来存储和操作对象的集合。在本章节中,我们将详细介绍 Java 集合框架的主要组成部分、使用...
根据给定文件的信息,我们可以提炼出关于Java集合框架的一些关键知识点。这些知识点主要涉及集合框架的基本概念、常用接口与类的介绍以及它们之间的关系。 ### 集合框架概述 在Java编程语言中,集合框架提供了一组...
超详细的集合框架总结,用法,比较,一网打尽java集合内容!超详细得集合框架知识图谱,如果你下载你会感觉超值
根据提供的信息,我们可以总结并详细解释关于Java集合框架的一些关键知识点。这些知识点主要涉及Java集合框架中的各种数据结构,如List、Set、Map等,并深入探讨了它们在实际应用中的特性与用途。 ### Java集合框架...
JAVA泛型与集合框架知识点总结 JAVA泛型是JDK1.5中引入的一种机制,主要目的是可以建立具有类型安全的集合框架,如链表、散列映射等数据结构。泛型类的声明可以使用“class 名称<泛型列表>”语法,例如:class ...
本人总结的java高级集合框架知识点汇总,在使用Java的时候,我们都会遇到使用集合(Collection)的时候,但是Java API提供了多种集合的实现,我在使用和面试的时候频频遇到这样的“抉择” 。 :)(主要还是面试的...
### Java类集集合框架知识点详解 #### 一、概述 Java类集集合框架是一个非常重要的概念,它提供了标准的数据结构来存储和管理对象。在Java中,类集框架主要包括四个核心接口:`List`、`Set`、`Map`以及`Iterator`...
视频"15-集合框架015-集合的练习题_扑克-1080P 高清-AVC.mp4"可能会通过实际案例,比如创建和操作扑克牌集合,来帮助我们巩固所学知识。这可能是对前面介绍的集合操作和数据结构的实战应用,有助于理解如何在实际...
2. 集合框架:如ArrayList、LinkedList、HashMap等,提供了存储和操作数据的强大工具。 3. 异常处理:Java强制要求程序员处理异常,提高了程序的健壮性。 4. 多线程:Java内置了多线程支持,可以同时执行多个任务。 ...
总结,Java集合框架提供了丰富的数据结构,如List、Set、Map等,通过接口和实现类的设计,使得开发者可以根据需求选择最适合的容器。理解并熟练运用集合框架,能极大地提高代码的可读性和性能。在具体应用中,要根据...
总结,Java集合框架为开发人员提供了丰富的数据结构选择,从简单的列表到复杂的映射关系,都能找到适合的实现。泛型的使用确保了类型安全,`Iterator`和增强型`for`循环提供了灵活的遍历方式。理解并熟练运用这些...
这篇“Java基础知识总结(经典)”涵盖了Java开发中的核心概念和重要知识点,旨在为初学者和有经验的开发者提供一个全面的回顾。以下是主要的学习点: 1. **Java环境配置**:在开始编程之前,必须安装Java ...
本资源"Java最全知识总结思维导图"提供了全面的Java学习路径和关键知识点的概览,旨在帮助初学者和有经验的开发者系统地理解和掌握Java的核心概念。 1. **数据库**: Java在数据库交互方面主要依靠JDBC(Java ...