java中三大集合框架
一、List集合
1、List实现的超级父类接口:Collection
存储一组不唯一(允许重复),有序的对象。
2、了解ArrayList类
A):定义的格式:ArrayList<具体类型> 集合名 = new ArrayList<具体类型>();
B):数据的存储方式:底层还是用数组存储
C):对象的类型:在List集合中,如果定义集合对象时没有定义定义对象的类型,就表示什么类型的对象都可以直接存储到List集合中,如果想要运用里面的元素,则需要用instanceof来判断元素的类型。格式 :元素 instanceof 所判断的类型;返回true或false。后续需要强转。
D):集合的设计:泛型的方式进行类型指定,ArrayList<具体类型>
特点:元素有序、可重复,可变大小的容器
遍历:for循环即可
E):基本操作:
增加:集合名.add(元素); 加在集合最后,
集合名.add(数字,元素); 加载指定的位置
集合名.addAll(另一个集合名); 加在最后
集合名.addAll(数字,另一个集合名); 加载指定位置
删除:集合名.remove(数字); 移去指定位置的元素
集合名.remove(元素); 移去集合中第一次出现的指定元素(如果存在)
集合名.removeALL(另一个集合名); 移去另一个集合中的所有元素
集合名.retaintALL(另一个集合名); 仅保留另一个集合中的所有元素
集合名.clear(); 清空集合
判断/获得:集合名.get(数字); 获得指定位置的元素
集合名.contains(元素); 判断集合是否包含该元素,是则返回true
集合名.contains(另一个集合名); 判断是否包含另一个集合的所有元素
集合名.indexOf(元素); 返回该元素的索引,无则返回-1
集合名.equals(元素); 判断该元素是否与集合的元素一致 返回true或false
改:集合名.set(数字,元素); 用该元素替换指定位置的元素
其它:集合名.size(); 获取集合的大小
二、Set集合
1、Set实现的超级父类接口:Collection
2、了解HashSet类
A):定义的格式: HashSet<具体类型> 集合名 = HashSet<具体类型>();
B):数据的存储方式:遵循Hash算法来存储数据
C):对象的类型:必须要定义集合对象类型,否则会影响后续的使用
D):集合的设计:泛型的方式进行类型指定:HashSet<具体类型>
特点:元素无序、不可重复,可变大小的容器
注意:底层并非真正的无序,遵循Hash算法来保证数据的存储,但是我们作为使用者,就理解为无序
遍历:需要使用迭代器:Iterator<类型> 名称 = 集合名.iterator();
E):基本操作:
增加:集合名.add(元素); 添加指定元素(之前集合不过包含的)
删除:集合名.remove(元素); 移去指定的元素
集合名.clear(); 清空集合
判断:集合名.containts(元素); 如果集合包含此元素,返回true
其它:集合名.size(); 获得集合的大小
Iterator<类型> 名称 = 集合名.iterator(); 用于集合的遍历
三、Map集合
1、Map没有实现的超级父类接口,不是Collection的直接接口子类
2、了解HashMap类
A):定义的格式:HashMap<类型,类型> 集合名 = new HashMap<类型,类型>();
B):数据的存储方法:key+value的存储方式
C):对象的类型:必须要定义集合对象类型,否则会影响后续的使用
D)集合的设计:泛型的方式进行类型的指定:HashMap<具体类型>
特点:一条数据,是由两部分组成:键和值,元素无序、不可重复, 可变大小的容器
遍历:需要使用键的迭代器 Set<类型> 名称1 = 集合名.keySet();
Iterator<类型> 名称 = 名称1.iterator();
E):基本操作
增加:集合名.put(键,值); 在此映射中关联指定值与指定键(是put,不是add)
删除:集合名.remove(键); 从映射中移除指定键的映射关系(如果存在)
判断:集合名.containsKey(键); 如果此映射包含对于指定键的映射关系,返回true
集合名.containsValue(值); 如果此映射将一个或多个键映射到指定值,返回true
其它:集合名.size(); 获得集合的大小
注意:在Map集合中,一个键只能对应有一个值,但一个值可以有多个键对应,如果说放(put)了一个相同的键到map中,则新元素会替换原来的元素,会把替换掉的元素返回出来,你可以接收到,并做后续处理
java中三大集合框架的更多相关文章
- 菜鸟日记之 java中的集合框架
java中的集合框架图 如图所示:java中的集合分为两种Collection和Map两种接口 可分为Collection是单列集合和Map的双列集合 Collection单列集合:继承了Iterat ...
- Java中的集合框架(上)
Java中的集合框架概述 集合的概念: Java中的集合类:是一种工具类,就像是容器,存储任意数量的具有共同属性的对象. 集合的作用: 1.在类的内部,对数据进行组织: 2.简单的快速的搜索大数据量的 ...
- Java中的集合框架-Collections和Arrays
上一篇<Java中的集合框架-Map>把集合框架中的键值对容器Map中常用的知识记录了一下,本节记录一下集合框架的两个工具类Collections和Arrays 一,Collections ...
- Java中的集合框架-Map
前两篇<Java中的集合框架-Commection(一)>和<Java中的集合框架-Commection(二)>把集合框架中的Collection开发常用知识点作了一下记录,从 ...
- Java中的集合框架-Collection(二)
上一篇<Java中的集合框架-Collection(一)>把Java集合框架中的Collection与List及其常用实现类的功能大致记录了一下,本篇接着记录Collection的另一个子 ...
- Java中的集合框架
概念与作用 集合概念 现实生活中:很多事物凑在一起 数学中的集合:具有共同属性的事物的总体 java中的集合类:是一种工具类,就像是容器,储存任意数量的具有共同属性的对象 在编程时,常常需要集中存放多 ...
- Java中的集合框架(下)
学生选课--判断Set中课程是否存在 package com.imooc.collection; import java.util.ArrayList; import java.util.Arrays ...
- Java中的集合框架-Collection(一)
一,Collection接口 在日常的开发工作中,我们经常使用数组,但是数组是有很多的局限性的,比如:数组大小固定后不可修改,只能存储基本类型的值等等. 基于数组的这些局限性,Java框架就产生了用于 ...
- JAVA 中的集合框架
java集合框架提供了一套性能优良.使用方便的接口和类,它们位于java.util包中 一.集合与数组 数组:(可以存储基本数据类型)是用来存现对象的一种容器,但是数组的长度固定,不适合在对象数量未知 ...
随机推荐
- 题解 CF1385D 【a-Good String】
题意 定义:字符串s 为一个c-好串(c 为一个字符)时,必须满足: 当\(|s| = 1\) ,\(s = c\) 当\(|s| > 1\), \(s\) 的左半部分为全为 \(c\),右半部 ...
- ant design pro/前端/JS:实现本地运行https
工具:github---mkcert 用于生成本地证书 ant p版本:1.0.0 这里我只说如何给antp部署https,以及会遇到的问题解决,其他请看原文参考 1.用mkcert生成证书,去git ...
- Golang获取目录下的文件及目录信息
一.获取当前目录下的文件或目录信息(不包含多级子目录) func main() { pwd,_ := os.Getwd() //获取当前目录 //获取文件或目录相关信息 fileInfoList ...
- 分布式锁-Redis方案
#!/usr/bin/env python # coding=utf-8 import time import redis class RedisLock(object): def __init__( ...
- JS 原生ajax写法
<script> //step1.创建XMLHTTPRequest对象,对于低版本的IE,需要换一个ActiveXObject对象 var xhr; if (window.XMLHttpR ...
- 萌新学渗透系列之Hack The Box_Devel
我将我的walkthrough过程用视频解说的形式记载 视频地址https://www.bilibili.com/video/BV1Ck4y1B7DB 一是因为看我视频的后来者应该都是刚入门的新手,视 ...
- php iamp 接收邮件,收取邮件,获取邮件列表
每次想写的时候吧,提笔忘字.等到再次使用,又得想半天,,,,,好尴尬. 这次一边做一边写. 心得,程序员从菜鸟往老鸟转变的重要一步,学英语,看文档,在此我万分感谢鸟哥,,,,没他php哪有官方的中文注 ...
- Python 为什么要有 pass 语句?
本文出自"Python为什么"系列,请查看全部文章 关于 Python 中的pass语句,它似乎很简单(只有 4 个字母),即使是没有任何编程经验的初学者也能很快地掌握它的用法. ...
- Python三角函数
Python三角函数: 函数: ''' math.sin(x) 返回的x弧度的正弦值. math.asin(x) 返回x的反正弦弧度值. math.cos(x) 返回x的弧度的余弦值. math.ac ...
- __slots__属性
使用__slots__时,子类不受影响 class Person(object): __slots__ = ("name","age") def __str__ ...