![](https://img-blog.csdnimg.cn/20201010115845705.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
JAVA集合
了解 Java 中集合的接口结构及实现类
熟悉 Collection 接口的使用
掌握 List 集合的使用
掌握 Set 集合的使用
掌握 Map 集合的使用
熟悉使用 Collections 类操作集合
掌握泛型集合和泛型类的使用
不善表演
都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,
展开
-
1.17 项目实例:模仿斗地主洗牌发牌小游戏
实现思路步骤如下:准备牌:Arrylist 集合储存,for 循环遍历实现洗牌:使用 Collections 的shuffle(arryBox);方法刷新集合中的顺序发牌:使用 for 循环遍历 Arrylist 中的 51 张牌,然后用索引值对 3 取余,余数为 0,1,2 然后来随机分配牌。看牌:直接输出集合public class Main { public static void main(String[] args) { // 1. 准备牌 S原创 2020-09-11 11:19:58 · 520 阅读 · 0 评论 -
1.16 项目实例:Java图书信息查询
前面详细介绍了 Java 中各集合的使用,像 Set 集合和 List 集合等,另外,还结合泛型讲解了一些高级应用。在实际开发中,泛型集合是较常用的,一般定义集合都会使用泛型的形式来定义。本节将使用泛型集合来模拟实现某图书管理系统的查询功能。在图书管理系统中为了方便管理图书,将图书划分为几个类别。每个类别下有很多图书,每本图书都有相对应的类别,这就具备了一对多的关系映射,即一个类别对应多本图书。在这种情况下就可以**使用 Map 映射来存储类别和图书信息,其键为 Category(类别)类型,值为 Li原创 2020-09-11 10:34:31 · 805 阅读 · 0 评论 -
1.15 Java 9新增的不可变集合
Java 9新增的不可变集合Java 9 版本以前,假如要创建一个包含 6 个元素的 Set 集合,程序需要先创建 Set 集合,然后调用 6 次 add() 方法向 Set 集合中添加元素。Java 9 对此进行了简化,程序直接调用 Set、List、Map 的 of() 方法即可创建包含 N 个元素的不可变集合,这样一行代码就可创建包含 N 个元素的集合。不可变意味着程序不能向集合中添加元素,也不能从集合中删除元素。如下程序示范了如何创建不可变集合。public class Java9Colle原创 2020-09-10 17:40:53 · 179 阅读 · 0 评论 -
1.14 Stream操作Collection集合
使用Java 8新增的Stream操作Collection集合Java 8 还新增了 Stream、IntStream、LongStream、DoubleStream 等流式 API,这些 API 代表多个支持串行和并行聚集操作的元素。上面 4 个接口中,Stream 是一个通用的流接口,而 IntStream、LongStream、 DoubleStream 则代表元素类型为 int、long、double 的流。Java 8 还为上面每个流式 API 提供了对应的 Builder,例如 Stream原创 2020-09-10 17:38:15 · 258 阅读 · 0 评论 -
1.13 Predicate操作Collection集合
使用Java 8新增的Predicate操作Collection集合Java 8 起为 Collection 集合新增了一个 removeIf(Predicate filter) 方法,该方法将会批量删除符合 filter 条件的所有元素。该方法需要一个 Predicate 对象作为参数,Predicate 也是函数式接口,因此可使用 Lambda 表达式作为参数。如下程序示范了使用 Predicate 来过滤集合。import java.util.Collection;import java.ut原创 2020-09-10 17:21:09 · 304 阅读 · 0 评论 -
1.11 Lambda表达式遍历Iterator迭代器
Java使用Lambda表达式遍历Iterator迭代器Java 8 为 Iterator 引入了一个 forEachRemaining(Consumer action) 默认方法,该方法所需的 Consumer 参数同样也是函数式接口。当程序调用 Iterator 的 forEachRemaining(Consumer action) 遍历集合元素时,程序会依次将集合元素传给 Consumer 的 accept(T t) 方法(该接口中唯一的抽象方法)。java.util.function 中的 F原创 2020-09-10 16:59:18 · 376 阅读 · 0 评论 -
1.10 Iterator(迭代器)遍历集合元素
Iterator(迭代器)遍历Collection集合元素Iterator(迭代器)是一个接口,它的作用就是遍历容器的所有元素,也是 Java 集合框架的成员,但它与 Collection 和 Map 系列的集合不一样,Collection 和 Map 系列集合主要用于盛装其他对象,而 Iterator 则主要用于遍历(即迭代访问)Collection 集合中的元素。Iterator 接口隐藏了各种 Collection 实现类的底层细节,向应用程序提供了遍历 Collection 集合元素的统一编程接原创 2020-09-10 16:52:52 · 940 阅读 · 0 评论 -
1.12 foreach循环遍历Collection集合
Java使用foreach循环遍历Collection集合使用 Iterator 接口迭代访问 Collection 集合里的元素,除了这个方法之外,我们还可以使用 Java 5 提供的 foreach 循环迭代访问集合元素,而且更加便捷。如下程序示范了使用 foreach 循环来迭代访问集合元素。import java.util.Collection;import java.util.HashSet;public class Test { public static void main(Str原创 2020-09-10 16:30:21 · 533 阅读 · 0 评论 -
1.9 Lambda表达式遍历Collection集合
Java使用Lambda表达式遍历Collection集合Java 8 为 Iterable 接口新增了一个 forEach(Consumer action) 默认方法,该方法所需参数的类型是一个函数式接口,而 Iterable 接口是 Collection 接口的父接口,因此 Collection 集合也可直接调用该方法。当程序调用 Iterable 的 forEach(Consumer action) 遍历集合元素时,程序会依次将集合元素传给 Consumer 的 accept(T t) 方法(该接原创 2020-09-10 16:16:35 · 360 阅读 · 1 评论 -
1.8 Collections类操作集合详解——排序,查找,复制
Collections类操作集合详解Collections 类是 Java 提供的一个操作 Set、List 和 Map 等集合的工具类。Collections 类提供了许多操作集合的静态方法,借助这些静态方法可以实现集合元素的排序、查找替换和复制等操作。下面介绍 Collections 类中操作集合的常用方法。排序(正向和逆向):Collections 提供了如下方法用于对 List 集合元素进行排序。void reverse(List list):对指定 List 集合元素进行逆向排序。vo原创 2020-09-10 15:51:21 · 1191 阅读 · 0 评论 -
1.7 Java 8中Map新增的方法
Java 8 除了为 Map 增加了 remove(Object key, Object value) 默认方法之外,还增加了如下方法。名称说明Object compute(Object key, BiFunction remappingFunction)该方法使用 remappingFunction 根据原 key-value 对计算一个新 value。只要新 value 不为 null,就使用新 value 覆盖原 value;如果原 value 不为 null,但新 value原创 2020-09-10 15:14:55 · 339 阅读 · 0 评论 -
1.6 Java遍历Map集合
Java遍历Map集合的四种方式Map 集合的遍历与 List 和 Set 集合不同。Map 有两组值,因此遍历时可以只遍历值的集合,也可以只遍历键的集合,也可以同时遍历。Map 以及实现 Map 的接口类(如 HashMap、TreeMap、LinkedHashMap、Hashtable 等)都可以用以下几种方式遍历。1)在 for 循环中使用 entries 实现 Map 的遍历(最常见和最常用的)。 import java.util.HashMap;import java.util.Map;原创 2020-09-10 14:31:28 · 746 阅读 · 1 评论 -
1.5 Map集合:HashMap 和TreeMap 类
Map集合,HashMap,TreeMapMap 是一种键-值对(key-value)集合,Map 集合中的每一个元素都包含一个键(key)对象和一个值(value)对象。用于保存具有映射关系的数据。Map 集合里保存着两组值,一组值用于保存 Map 里的 key,另外一组值用于保存 Map 里的 value,key 和 value 都可以是任何引用类型的数据。Map 的 key 不允许重复,value 可以重复,即同一个 Map 对象的任何两个 key 通过 equals 方法比较总是返回 false原创 2020-09-10 11:42:12 · 225 阅读 · 0 评论 -
1.4 Set集合:HashSet和TreeSet类
Set 集合无序的,不能包含重复的对象Set 集合类似于一个罐子,程序可以依次把多个对象“丢进”Set 集合,而 Set 集合通常不能记住元素的添加顺序。也就是说 Set 集合中的对象不按特定的方式排序,只是简单地把对象加入集合-------无序。Set 集合中不能包含重复的对象,并且最多只允许包含一个 null 元素---------不能重复元素。Set 实现了 Collection 接口,它主要有两个常用的实现类:HashSet 类和 TreeSet类。HashSet 类HashSet原创 2020-09-10 11:42:00 · 434 阅读 · 0 评论 -
1.3 List集合:ArrayList和LinkedList类的用法及区别
List集合:List 是一个有序、可重复的集合,集合中每个元素都有其对应的顺序索引。List 集合允许使用重复元素,可以通过索引来访问指定位置的集合元素。List 集合默认按元素的添加顺序设置元素的索引,第一个添加到 List 集合中的元素的索引为 0,第二个为 1,依此类推。List 实现了 Collection 接口,它主要有两个常用的实现类:ArrayList 类和 LinkedList 类。ArrayList 类,元素随机访问ArrayList 类实现了可变数组的大小,存储在内的数原创 2020-09-10 11:41:36 · 572 阅读 · 0 评论 -
1.2 Collection接口
Collection接口详解Collection 接口是 List、Set 和 Queue 接口的父接口,通常情况下不被直接使用。Collection 接口定义了一些通用的方法,通过这些方法可以实现对集合的基本操作。定义的方法既可用于操作 Set 集合,也可用于操作 List 和 Queue 集合。本节将介绍 Collection 接口中常用的方法,如表 1 所示:方法名称说明boolean add(E e)向集合中添加一个元素,如果集合对象被添加操作改变了,则返回 true。E原创 2020-09-10 11:39:59 · 101 阅读 · 0 评论 -
1.1 JAVA集合
Java 集合框架集合框架被设计成要满足以下几个目标。该框架必须是高性能的。基本集合(动态数组,链表,树,哈希表)的实现也必须是高效的。该框架允许不同类型的集合,以类似的方式工作,具有高度的互操作性。对一个集合的扩展和适应必须是简单的。从下面面的集合框架图可以看到,Java 集合框架主要包括两种类型的容器,一种是集合(Collection),存储一个元素集合,另一种是图(Map),存储键/值对映射。在编程时,可以使用数组来保存多个对象,但数组长度不可变化,一旦在初始化数组时指定了数原创 2020-09-10 11:40:35 · 122 阅读 · 0 评论