摘要: Map集合遍历键值对方式 Set<Map.Entry<K, V>> entrySet() 返回此映射中包含的映射关系的Set视图 1、使用Map集合中的方法entrySet(),把Map集合中多个Entry对象取出来,存储到一个Set集合中 2、遍历Set集合,获取每一个Entry对象 3、使用En 阅读全文
posted @ 2022-07-06 19:35 肥宅快乐水~ 阅读(39) 评论(0) 推荐(0)
摘要: Map集合遍历键找值方式 Entry键值对对象 Map中的key和value是一一对应关系,Entry 将键值对的对应关系封装成了对象。即键值对对象,这样我们在遍历 Map 集合时,就可以从每一个键值对( Entry )对象中获取对应的键与对应的值。 public K getKey() :获取Ent 阅读全文
posted @ 2022-07-06 19:28 肥宅快乐水~ 阅读(46) 评论(0) 推荐(0)
摘要: Map常用子类 HashMap:存储数据采用的哈希表结构,元素的存取顺序不能保证一致。由于要保证键的唯一、不重复,需要重写键的hashCode()方法、equals()方法。LinkedHashMap:存储数据采用的哈希表结构+链表结构。通过链表结构可以保证元素的存取顺序一致;通过哈希表结构可以保证 阅读全文
posted @ 2022-07-06 19:23 肥宅快乐水~ 阅读(29) 评论(0) 推荐(0)
摘要: Collection集合工具类的方法sort(list,Comparator) Comparable:强行对实现它的每个类的对象进行整体排序。这种排序被称为类的自然排序,**类的compareTo方法被称为它的自然比较方法。只能在类中实现compareTo()一次,不能经常修改类的代码实现自己想要的 阅读全文
posted @ 2022-07-06 19:17 肥宅快乐水~ 阅读(134) 评论(0) 推荐(0)
摘要: Collection集合工具类的方法addAll与shuffle java.utils.Collections是集合工具类,用来对集合进行操作。部分方法如下: public static boolean addAll(Collection c,T…elements):往集合中添加一些元素。 publ 阅读全文
posted @ 2022-07-06 19:13 肥宅快乐水~ 阅读(66) 评论(0) 推荐(0)
摘要: LinkedHashSet集合 Java.util.LinkedHashSet集合 extends HashSet集合 LinkedHashSet集合特点: 底层是一个哈希表(数组+链表/红黑树)+链表;多了一条链表(记录元素的存储顺序),保证元素有序 可变参数 JDK1.5出的新特新 使用前提:当 阅读全文
posted @ 2022-07-06 13:59 肥宅快乐水~ 阅读(20) 评论(0) 推荐(0)
摘要: Set集合存储元素不重复的原理 java.util.Set接口 extends Collection Set接口特点 不允许存储重复的元素 没有索引,没有带索引的方法,也不能是使用普通的for循环遍历 HashSet存储自定义类型元素 Java.util.HashSet集合 implements S 阅读全文
posted @ 2022-07-06 13:56 肥宅快乐水~ 阅读(55) 评论(0) 推荐(0)
摘要: 哈希值 哈希值:是一个十进制的整数,由系统随机给出(就是对象的地址值,是一个逻辑地址,是模拟出来得到地址,不是数据实际存储的物理地址)3 在object类有一个方法,可以获取对象的哈希值 int hashcode()返回该对象的哈希码值。 hashcode方法的源码: public native i 阅读全文
posted @ 2022-07-06 13:50 肥宅快乐水~ 阅读(41) 评论(0) 推荐(0)
摘要: Vector集合 java.uti.vector 存数据的结构是数组结构 所有单列集合的老祖宗,1.0版本就出现了 单线程(慢) 在1.2班实现list接口,1.2才出现iterator迭代器 1.0版本没有add方法和get方法 那么1.0版本的vector是怎么添加元素和遍历元素的? 通过两个方 阅读全文
posted @ 2022-07-06 13:45 肥宅快乐水~ 阅读(36) 评论(0) 推荐(0)
摘要: ArrayList集合 java.util.ArrayList-集合数据存储的结构是数组结构。元素增删慢,查找快,由于日常开发中使用最多的功能为查询数据、遍历数据,所以ArrayList是最常用的集合。 许多程序员开发时非常随意地使用ArrayList完成任何需求,并不严谨,这种用法是不提倡的。 J 阅读全文
posted @ 2022-07-06 13:37 肥宅快乐水~ 阅读(27) 评论(0) 推荐(0)
摘要: 数据结构红黑树 概念: 红黑树,是一种二叉搜索树,但在每个结点上增加一个存储位表示结点的颜色,可以是Red或Black。 通过对任何一条从根到叶子的路径上各个结点着色方式的限制,红黑树确保没有一条路径会比其他路径长出俩倍,因而是接近平衡的。 性质: 1、根节点是黑色的 2、每个节点不是红色的就是黑色 阅读全文
posted @ 2022-07-06 13:27 肥宅快乐水~ 阅读(98) 评论(0) 推荐(0)
摘要: 数据结构数组 在程序设计中,为了处理方便, 把具有相同类型的若干变量按有序的形式组织起来。这些按序排列的同类数据元素的集合称为数组。在C语言中, 数组属于构造数据类型。一个数组可以分解为多个数组元素,这些数组元素可以是基本数据类型或是构造类型。因此按数组元素的类型不同,数组又可分为数值数组、字符数组 阅读全文
posted @ 2022-07-06 13:21 肥宅快乐水~ 阅读(61) 评论(0) 推荐(0)
摘要: 数据结构栈 栈是限定仅在表尾进行插入或删除操作的线性表。因此,对栈来说,表尾端有其特殊含义,称为栈顶,相应的,表头端称为栈底。栈的特点是后进先出,即最后被压入栈的元素会第一个被弹出。 栈顶(Top):线性表允许进行插入删除的那一端。栈底(Bottom):固定的,不允许进行插入和删除的另一端。空栈:不 阅读全文
posted @ 2022-07-06 13:17 肥宅快乐水~ 阅读(32) 评论(0) 推荐(0)
摘要: 斗地主案例的需求分析 1.案例介绍按照斗地主的规则,完成洗牌发牌的动作。具体规则:使用54张牌打乱顺序,三个玩家参与游戏,三人交替摸牌,每人17张牌,最后三张留作底牌。 2.案例分析准备牌:牌可以设计为一-个ArrayList ,每个字符串为一张牌。每张牌由花色数字两部分组成,我们可以使用花色集合与 阅读全文
posted @ 2022-07-06 13:08 肥宅快乐水~ 阅读(43) 评论(0) 推荐(0)
摘要: 泛型通配符 为什么要用通配符呢? 在java中,数组是可以协变的,比如dog extends Animal,那么Animal[] 与dog[]是兼容的。而集合是不能协变的,也就是说List<Animal>不是List<dog>的父类,这时候就可以用到通配符了。 一、基本概念: 在学习Java泛型的过 阅读全文
posted @ 2022-07-06 13:02 肥宅快乐水~ 阅读(97) 评论(0) 推荐(0)
摘要: 定义和使用含有泛型的方法 泛型定义在方法的修饰符和返回值类型之间 格式: 修饰符<> 返回值类型 方法名(参数列表(使用泛型)){ 方法体; } 含有泛型的方法,在调用方法的时候确定泛型的数据类型 传递什么类型的参数,泛型就是什么类型 定义泛型方法: 测试泛型方法: 定义和使用含有泛型的接口 第一种 阅读全文
posted @ 2022-07-06 09:39 肥宅快乐水~ 阅读(38) 评论(0) 推荐(0)
摘要: 使用泛型的好处 创建集合对象,使用泛型好处:1.避免了类型转换的麻烦,存储的是什么类型,取出的就是什么类型2.把运行期异常(代码运行之后会抛出的异常),提升到了编译期(写代码的时候会报错)弊端:泛型是什么类型,只能存储什么类型的数据 创建集合对象,不使用泛型好处:集合不使用泛型,黑t认的类型就是ob 阅读全文
posted @ 2022-07-06 09:32 肥宅快乐水~ 阅读(45) 评论(0) 推荐(0)
摘要: 增强for循环 一、增强for循环增强for循环的作用: 简化迭代器的书写格式。(注意:增强for循环的底层还是使用了迭代器遍历。)增强for循环的适用范围: 如果是实现了Iterable接口的对象或者是数组对象都可以使用增强for循环。增强for循环的缺点:增强for循环和Iteration遍历的 阅读全文
posted @ 2022-07-06 09:24 肥宅快乐水~ 阅读(83) 评论(0) 推荐(0)
摘要: 迭代器代码实现 Iterator: ConcreteIterator: Aggregate: ConcreteAggregate: Client: 迭代器的实现原理 1.迭代器模式就是分离了集合对象的遍历行为,抽象出一个迭代器类来负责,这样既可以做到不暴露集合的内部结构,又可让外部代码透明地访问集合 阅读全文
posted @ 2022-07-06 09:16 肥宅快乐水~ 阅读(51) 评论(0) 推荐(0)
摘要: collection集合常用功能 public boolean add(E e):把给定的对象添加到当前集合中public void clear():清空集合中所有的元素public boolean remove(E e):把给定的对象在当前集合中删除public boolean contains( 阅读全文
posted @ 2022-07-06 09:05 肥宅快乐水~ 阅读(44) 评论(0) 推荐(0)