集合:例如 偶数、水仙花数、奇数,班集体 都属于集合
还有{“111”,“sss”,aaa"}也是集合

集合框架JCF(java collections framework) = 集合 + 统一标准(框架)

三种集合的类型: List Set Map

1) ordered lists
【List】 队列
java.util.ArrayList ☆
* Vector
java.util.LinkedList
【Queue】 链表
java.util.PriorityQueue
2) dictionaries/maps 文档的索引和内容、身份证号和身份信息
【Map 】 k-v格式(身份证号、身份信息)
key不可重复,value可重复
java.util.HashMap ☆
3) sets k(不能重复),无序 unordered
【Set 】
java.util.HashSet
创建示例:
List list = new ArrayList(); //☆
Queue queue = new LinkedList();
Map map = new HashMap<Integer, Integer> (); //☆
Set set = new HashSet<>();

常见操作:增删改查
一、List
ArrayList

LinkedList

二、Set
Set接口存储一组唯一,无序的对象。
HashSet允许集合元素值为null 操作数据的方法与List类似,Set接口不存在get()方法。 Iterator接口表示对集合进行迭代的迭代器,专门实现集合的遍历。
方法:
• hasNext():判断是否存在另一个可访问的元素
• next():返回要访问的下一个元素

案例:

// 通过迭代器依次输出集合中所有元素的信息
System.out.println("使用Iterator遍历,员工姓名分别是:");
Iterator it = set.iterator();
while (it.hasNext()) {
Employee emp = (Employee) it.next();
String name = emp.getName();
System.out.println(name);
}

三、Map

案例:

package demo1;import java.util.Collection;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map.Entry;
import java.util.Set;/***   HashMap*        * @author tcf**/
public class ShowMap {public static void main(String[] args) {HashMap<Integer, String> map1 = new HashMap<Integer, String> ();// 数据的常用操作: 增、删、改、查System.out.println("【增】使用put");map1.put(5, "angle");map1.put(2, "baby");map1.put(6, "hahahah");System.out.println(map1);// 删System.out.println("【删】remove-1: 使用key");map1.remove("5");// 指定的key类型与map1的key类型不一致,删除不了System.out.println(map1);map1.remove(6);System.out.println(map1);System.out.println("【删】remove-2: 使用key+value");System.out.println(map1.remove(2, "baby2"));// (2, baby)System.out.println(map1);// 改: replace只有找到key,才会更新valueSystem.out.println("【改】-1:使用put");map1.put(2, "baby2");// 修改System.out.println(map1);System.out.println("【改】-2:使用replace");map1.replace(5, "haah");System.out.println(map1);map1.replace(8, "ssssssssssss");System.out.println(map1);// 查System.out.println("【查】-1:根据key查找");System.out.println(map1.containsKey(5));System.out.println(map1.containsKey(8));System.out.println("【查】-2:根据value查找");System.out.println(map1.containsValue("baby"));System.out.println(map1.containsValue("baby2"));System.out.println("【查】-3:使用get提取,迂回判断是否存在");String value8 = map1.get(8);if (value8 == null) {System.out.println("key(8)在map1中不存在");}else {System.out.println("8存在:"+ value8);}if (map1.get(5) == null) {System.out.println("key(5)在map1中不存在");}else {System.out.println("5存在");}// 【遍历】//keySet<Integer> keySet = map1.keySet();System.out.println(keySet);Iterator<Integer> iterator = keySet.iterator();while (iterator.hasNext()) {System.out.println("===" + iterator.next());//?2: 此处可以通过key获取到value,使用get(key)}
//      for (int i = 0; i < keySet.size(); i++) {
//          System.out.println(keySet.);
//      }//valueCollection<String> values = map1.values();Object[] array = values.toArray();for (int i = 0; i < array.length; i++) {System.out.println("?????" + array[i].toString());}//    Entry:  (key,value)Set<Entry<Integer, String>> entrySet = map1.entrySet(); System.out.println(entrySet);Iterator<Entry<Integer, String>> iterator2 = entrySet.iterator();while (iterator2.hasNext()) {Entry<Integer, String> one = iterator2.next();System.out.println("(" + one + ")");// 提取key、value => key     valueSystem.out.println("\t" + one.getKey() +"     " + one.getValue());}}
}

Collections
Collections是java.util下的类,包含有各种关集合操作静态方法。

java基础_集合框架相关推荐

  1. Java基础_集合框架1

    一.集合框架(体系概述) 为什么会出现集合框架(集合类)? 面向对象语言对事物的体现都是以对象的形式,所以为了方便对多个对象的操作,就对对象进行存储,集合就是存储对象最常用的一种方式. 数组和集合框架 ...

  2. Thinking in java基础之集合框架

    Thinking in java基础之集合框架 大家都知道我的习惯,先上图说话. 集合简介(容器) 把具有相同性质的一类东西,汇聚成一个整体,就可以称为集合,例如这里有20个苹果,我们把每一个苹果当成 ...

  3. java把map值放入vector_Thinking in java基础之集合框架

    Thinking in java基础之集合框架 大家都知道我的习惯,先上图说话. 集合简介(容器) 把具有相同性质的一类东西,汇聚成一个整体,就可以称为集合,例如这里有20个苹果,我们把每一个苹果当成 ...

  4. 7.Java基础之集合框架+JDK8新特性

    1.集合概述 1.1 为什么学集合 思考:数组有什么缺点? 长度一旦定义,不能改变!定义大了,浪费空间:小了,可能不够 ---->动态的数组 对于增删,需要移动位置 ->有人帮我们做这个事 ...

  5. java基础复习-集合框架(1)

    java集合概述 Java 集合, 也叫作容器,主要是由两大接口派生而来:一个是 Collection接口,主要用于存放单一元素:另一个是 Map 接口,主要用于存放键值对.对于Collection ...

  6. Java基础(集合框架——Collection、List、Set、泛型)

    为什么出现集合类? 面向对象语言对事物的体现都是以对象的形式,所以为了方便对多 个对象的操作,就对对象进行存储,集合就是存储对象常用的一 种方式. 数组和集合类同是容器,有何不同? 数组虽然也可以存储 ...

  7. 小汤学编程之JAVA基础day11——集合框架:List/Set/Map集合、Collections集合工具类、泛型、TreeMap和TreeSet

    一.集合的特点 二.继承结构图 三.List集合 1.特点     2.ArrayList类     3.LinkedList类     4.两者的对比     5.集合的遍历 四.Set集合 1.特 ...

  8. java基础_集合List与Set接口

    List接口继承了Collection的方法  当然也有自己特有的方法向指定位置添加元素   add(索引,添加的元素); 移除指定索引的元素   remove(索引) 修改指定索引的元素   set ...

  9. Java基础_集合_List与Set集合(笔记)

    文章目录 List List集合概述 Listlterator listerator:列表迭代器 listerator常用方法: Arraylist与Linkedlist 两者的异同 ArrayLis ...

最新文章

  1. TypeSprict -- 基础类型
  2. fixture.detectChange如何通过Angular zone执行其异步逻辑的
  3. 【渝粤题库】广东开放大学 经济学基础 形成性考核
  4. Sharding-Sphere_分库分表小结和问题_Sharding-Sphere,Sharding-JDBC分布式_分库分表工作笔记005
  5. Elasticsearch 并发修改乐观锁
  6. win10系统电脑c盘哪些文件可以删除,c盘可以删除的文件有哪些
  7. tensorflow/pytorch 设置GPU的使用
  8. 安徽医科大学计算机二级证书,勇追梦 终圆梦 安徽医科大学2021届推免生成绩喜人...
  9. 电力拖动自动控制系统matlab,基于Matlab的《电力拖动自动控制系统》课程教学改革...
  10. matlab fft 作图,Matlab绘图示例
  11. 个人所得税 java_通过Java程序计算个人所得税
  12. Mysql数据库开启远程连接
  13. 【备忘】【No5】微信公众平台开发入门到实战开发视频教程(Java+PHP)
  14. 当程序员工作七年之后的一点重要的总结
  15. 收藏商品表设计_数据采集实战:商品详情页数据埋点
  16. 计算机视频DVI接口,HDMI、DVI 电脑为什么会有这么多种视频接口?
  17. 凸优化之共轭函数(二)
  18. Android 10 默认输入法
  19. 详解clickhouse分区目录的合并过程
  20. CODESYS Development System

热门文章

  1. 搭建 Jest+ Enzyme 测试环境
  2. 中国工程院院士、北京清华长庚医院执行院长董家鸿正式接受聘请,成为数据科学研究院RONG教授...
  3. 13980个性桌面导航
  4. 曾经被微信打得溃不成军的米聊现在活得还好么
  5. wget账户密码下载网页上的数据
  6. Bringing up interface eth0: Device eth0 does not seem to be present, delaying initialization.
  7. 梦想还是要有的,不想当CEO的CIO不是好的IT主管
  8. linux 内核ioctl,Linux ioctl与内核交换数据
  9. html 输入框 焦点事件,input输入框用jquery怎么写失去焦点事件
  10. 233333!B站又摊上大事了。。。