0
点赞
收藏
分享

微信扫一扫

API第一章:集合

西街小学的王 2022-03-23 阅读 35
java

一:学习集合的用处

1:数组的缺陷

(1)数组中只能存储相同类型的数据。

(2)数组的长度固定不变,不能很好的解决元素数量动态变化的问题。

(3)虽然可以通过数组名.length获取数组的长度,但却无法直接获取

其中真正存储的元素的个数;

(4)数组采取的是在内存中分配连续空间的方式来存储数据,虽然可以

通过下标快速获取元素,但是反过来,要想通过某个元素的信息来查找这个元素

时却比较麻烦,需要逐个遍历,效率低下。

(5)无法通过更复杂、方便的方式来存储数据

2、 针对数组的这些缺陷,Java 提供了比数组更灵活、更实用的“集合框架”,可大大

提高软件的开发效率,并且不同的集合可适用于不同的场合。

二:什么是集合?

1、与变量、数组一样,集合也是存储数据的一种容器。

2、它由一组接口和类组成,位于java.util包中。

 3、它的关系结构如下:

虚线框表示接口或抽象类,实线框表示实现类,粗实线框表示常用的实现类。虚线和空

心箭头表示实现关系,虚线和实心箭头表示依赖关系(即线连接的类中使用了箭头所指向的 类)。

三、list接口:有序 & 不唯一

(1)ArraysList: ① 和数组采用相同的存储方式,在内存中开辟连续的空间,并且实

现了长度可变的数组,也称为动态数组。 ②与数组的不同的是:数组只能存储相同类型的元素但ArraysList可以存储任何类型的元素,并且会把所有元素都转换成 Object类型(本质上仍是相同数据类型)。 ③因其内存空间连续,在增加和删除非尾部元素时会造成其它元素 的移动,因此(“增删改”)效率较低。但适用于遍历和随机访问元 素 (即“查”)。

2)LinkedList: ①采用链表式的存储方式,适用于插入和删除元素,不适用于查找

元素。与ArraysList互补。

 

四、set:无序&唯一  

①它的查找效率更高      

   

注:set没有get方法

五、Iterator:对集合进行迭代遍历

  (1) 使用iterator()方法获取Iterator对象: Iterator iterator=****.iterator();

(2)hasNext():判断是否存在下一个可迭代的元素,有则返回true;

(3)next():获取要访问的下一个元素;

 六、Map:

①存储K键-V值组合;

②K键是一个set集合,不要求有序,不可重复;

③value不要求序但可重复; Map<String,List<String>> map=new HashMap<>();//复合

结构,可存放如某人的通话记录类的数据。

七.Collections 类

(1) 排序: //comparable:可比较的

若要对一个类的对象进行排序,要先让这个类实现comparable接口,再 调用方法:

int comparaTo (Object o): this>o 返回1; this<o 返回-1; this== o 返回0; 然后通过collections.sort()方法进行排序。

(2) 替换 :全部替换成同一个元素 //fill:装满,填充; collections.fill();

(3)最大最小值:max();min()

(4)查找:binarySearch();

举报

相关推荐

第一章 绪论

第一章综述

第一章 起步

第一章.概论

第一章介绍

第一章 引论

docker 第一章

第一章作业

0 条评论