Java集合存储的灵活运用List集合存储 54个编号 Map <key,value> key 对应的是编号 , value 是 牌的花色(红方梅黑)+ 具体的一张牌 ,比如 黑桃2 用2个数组 存放 花色+ 13张牌 将牌的信息 存入到 list和map 发牌了… (需要打乱顺序) 看一下 自己是什么牌 (看牌) 代码如下package DouDiZhu; import java.util.*; public class DouDiZhuDemo {public static void ma…
下面通过代码引入Map集合:如下 package cn.itcast_01; import java.util.HashMap; import java.util.Map; /* * 作为学生来说,是根据学号来区分不同的学生的,那么假设我现在已经知道了学生的学号,我要根据学号去获取学生姓名,请问怎么做呢? * 如果采用前面讲解过的集合,我们只能把学号和学生姓名作为一个对象的成员,然后存储整个对象,将来遍历的时候,判断,获取对应的名称. * 但是呢,如果我都能把学生姓名拿出来了,我还需要根据编号去…
1. 下面通过代码引入Map集合: 如下 package cn.itcast_01; import java.util.HashMap; import java.util.Map; /* * 作为学生来说,是根据学号来区分不同的学生的,那么假设我现在已经知道了学生的学号,我要根据学号去获取学生姓名,请问怎么做呢? * 如果采用前面讲解过的集合,我们只能把学号和学生姓名作为一个对象的成员,然后存储整个对象,将来遍历的时候,判断,获取对应的名称. * 但是呢,如果我都能把学生姓名拿出来了,我还需要根…
import java.util.HashMap; import java.util.Map; import java.util.Scanner; /** * 目标 : 输出一个字符串中每个字符出现的次数.(经典面试题). * * @author Administrator * */ public class MapDemo01 { public static void main(String[] args) { // TODO Auto-generated method stub // 1 键…
一 模拟斗地主洗牌发牌 1.案例需求 按照斗地主的规则,完成洗牌发牌的动作. 具体规则: 1. 组装54张扑克牌 2. 将54张牌顺序打乱 3. 三个玩家参与游戏,三人交替摸牌,每人17张牌,最后三张留作底牌. 4. 查看三人各自手中的牌(按照牌的大小排序).底牌 手中扑克牌从大到小的摆放顺序:大王,小王,2,A,K,Q,J,10,9,8,7,6,5,4,3 2.案例分析 准备牌: 完成数字与纸牌的映射关系: 使用双列Map(HashMap)集合,完成一个数字与字符串纸牌的对应关系(相当于一个字…
Map集合是将键映射到值的对象.一个映射不能包含重复的键:每个键最多只能映射到一个值. 存储的是键值对形式的元素,键唯一,值可以重复,有点类似于数据库中的主键加数据.主要功能有: A:添加功能 put方法 B:删除功能 remove方法 C:判断功能 boolean containsKey(Object key)//判断是否含有键 boolean containsValue(Object Value) boolean isEmpty() D:获取功能 get方法//举例说明 E:长度功能 Map…
package cn.itcast_01; import java.util.HashMap; import java.util.Map; import java.util.Set; /* * Map集合的遍历. * Map -- 夫妻对 * * 思路: * A:获取所有结婚证的集合 * B:遍历结婚证的集合,得到每一个结婚证 * C:根据结婚证获取丈夫和妻子 * * 转换: * A:获取所有键值对对象的集合 * B:遍历键值对对象的集合,得到每一个键值对对象 * C:根据键值对对象获取键和值…
package cn.itcast_01; import java.util.HashMap; import java.util.Map; import java.util.Set; /* * Map集合的遍历. * Map -- 夫妻对 * 思路: * A:把所有的丈夫给集中起来. * B:遍历丈夫的集合,获取得到每一个丈夫. * C:让丈夫去找自己的妻子. * * 转换: * A:获取所有的键 * B:遍历键的集合,获取得到每一个键 * C:根据键去找值 */ public class Ma…
package cn.itcast_01; import java.util.Collection; import java.util.HashMap; import java.util.Map; import java.util.Set; /* * 获取功能: * V get(Object key):根据键获取值 * Set<K> keySet():获取集合中所有键的集合 * Collection<V> values():获取集合中所有值的集合 */ public class M…
Java程序国际化初识 1.基本思路 Java程序的国际化的思路是将程序中的标签.提示等信息放在资源文件中,程序需要支持哪些国家.语言环境,就对应提供相应的资源文件.资源文件是key-value对,每个资源文件中的key是不变的,但value则随不同国家.语言改变. 2.使用的类 java.util.ResourceBundle:用于加载一个国家.语言资源包. java.util.Locale:用于封装一个特定的国家/区域.语言环境. java.text.MessageFormat:用于格式化带…
Map集合概述和特点 Map是属于java.util的一个接口Map<k,v> k:映射所维护的键的类型 v:映射值的类型 Map是将键映射到值的对象.一个映射不能包含重复的键:每个键最多只能映射到一个值. Map接口和Collection接口的不同 Map是双列的,Collection是单列的 Map的键唯一,Collection的Set是唯一的 Map集合的数据结构只针对键有效,跟值无关 Collection集合的数据结构是针对元素有效的 Map集合的功能概述 添加功能: V put(K…
1. Map集合的遍历之 键值对对象找 键和值: package cn.itcast_01; import java.util.HashMap; import java.util.Map; import java.util.Set; /* * Map集合的遍历. * Map -- 夫妻对 * * 思路: * A:获取所有结婚证的集合 * B:遍历结婚证的集合,得到每一个结婚证 * C:根据结婚证获取丈夫和妻子 * * 转换: * A:获取所有键值对对象的集合 * B:遍历键值对对象的集合,得到每…
1. Map集合的遍历之键找值  package cn.itcast_01; import java.util.HashMap; import java.util.Map; import java.util.Set; /* * Map集合的遍历. * Map -- 夫妻对 * 思路: * A:把所有的丈夫给集中起来. * B:遍历丈夫的集合,获取得到每一个丈夫. * C:让丈夫去找自己的妻子. * * 转换: * A:获取所有的键 * B:遍历键的集合,获取得到每一个键 * C:根据键去找值 *…
1. Map集合的获取功能:  package cn.itcast_01; import java.util.Collection; import java.util.HashMap; import java.util.Map; import java.util.Set; /* * 获取功能: * V get(Object key):根据键获取值 * Set<K> keySet():获取集合中所有键的集合 * Collection<V> values():获取集合中所有值的集合 *…
一.容器之Map集合 集合体系的源码中,Map中的HashMap的设计堪称最经典,涉及数据结构.编程思想.哈希计算等等,在日常开发中对于一些源码的思想进行参考借鉴还是很有必要的. 基础:元素增查删.容器信息: 进阶:存储结构.容量.哈希: API体系 在整个Map和Set的API体系中,最重要的就是HashMap的实现原理: HashMap:基于哈希表管理元素: LinkedHashMap:基于HashMap和双向链表: HashSet:底层维护HashMap结构: LinkedHashSet:…
逻辑:       set是无序不重复数据元素的集合.       map是另一种set,如果将<key,value>看成一个整体的话,其实就是set.在map中,若用map的keyset()方法将key提取出来,便构成了一个set集合.       所以,就定义一个整体SimpleEntry<K,V>作为元素存入set. 代码: /* *SimpleEntry<K,V>作为map对象的存储元素 */ class SimpleEntry<K, V>   im…
往 期 精 彩 推 荐    [1]Java Web技术经验总结 [2]15个顶级Java多线程面试题及答案,快来看看吧 [3]面试官最喜欢问的十道java面试题 [4]从零讲JAVA ,给你一条清晰地学习道路!该学什么就学什么!! [5]福利:100G Java全套学习视频免费送了 今天突发奇想,对编码习惯和 编程风格 很感兴趣,于是乎,找了一下关于编程风格(Java篇)的资料,希望对爱好编码或者开始学习编码的同学有帮助! 来自<The Elements of Java Style>-<…
往 期 精 彩 推 荐    [1]Java Web技术经验总结 [2]15个顶级Java多线程面试题及答案,快来看看吧 [3]面试官最喜欢问的十道java面试题 [4]从零讲JAVA ,给你一条清晰地学习道路!该学什么就学什么!! [5]福利:100G Java全套学习视频免费送了 今天突发奇想,对编码习惯和 编程风格 很感兴趣,于是乎,找了一下关于编程风格(Java篇)的资料,希望对爱好编码或者开始学习编码的同学有帮助! 来自<The Elements of Java Style>-<…
package cn.itcast_04; import java.util.ArrayList; import java.util.Collections; import java.util.HashMap; import java.util.TreeSet; /* * 思路: *      A:创建一个HashMap集合 *      B:创建一个ArrayList集合 *      C:创建花色数组和点数数组 *      D:从0开始往HashMap里面存储编号,并存储对应的牌 *   …
Map和Collections是同级别的,不能像List排序那样直接用Collections.sort(new Comparator<?>(){ 复写compara方法}); HashMap没有排序 TreeMap默认排序为升序,注意是按键值key排序 package com.swift; import java.util.Comparator; import java.util.Map; import java.util.Scanner; import java.util.TreeMap;…
import java.util.ArrayList; import java.util.Collections; import java.util.HashMap; public class Doudizhu { public static void main(String[]args){ //存放扑克牌 //牌类+对应花色 HashMap<Integer, String> pooker = new HashMap<Integer,String>(); //牌的编号 ArrayL…
package com.doudou_01; import java.util.ArrayList; import java.util.Collections; import java.util.List; public class Doudizhu { public static void main(String[] args) { String[] floorColor = {"方块","梅花","红桃","黑桃"}; S…
public class StringSplit { public static void main(String[] args) { String sourceStr = "1,2,3,4,5,6,7,8,9,0"; String[] sourceStrArray = sourceStr.split(","); for (int i = 0; i < sourceStrArray.length; i++) { System.out.println(sourc…
Set:代表无序.不可重复的集合 Map:代表key-value对集合,也称为关联数组 从表面上看,Set和Map相似性很少,但实际上可以说Map集合时Set集合的扩展. 1.Set集合和Map集合的继承体系 Set集合的继承体系 Map集合的继承体系 2.Set集合和Map集合的关系 仔细观察上面两张图,可以发现以下规律: Set   <--->   Map EnumSet   <--->   EnumMap SortedSet   <--->   SortedMap…
基础----进阶 A. array数组accessible 可存取的 area面积audio 音频 addition 加法 action 行动 arithmetic 算法adjustment 调整 actual 真实的 argument 参量ascent 提升 already 已经 AWT(Abstract Window Toolkit)抽象窗口工具 API(Application Programming Interface)应用程序接口B. byte 字节 Boolean 布尔base 基础…
Java程序性能优化技巧 多线程.集合.网络编程.内存优化.缓冲..spring.设计模式.软件工程.编程思想 1.生成对象时,合理分配空间和大小new ArrayList(100); 2.优化for循环Vector vect = new Vector(1000);for( inti=0; i<vect.size(); i++){ ...}for循环部分改写成:int size = vect.size();for( int i=0; i>size; i++){ ...} 如果size=1000…
A:Map集合概述和特点(Set底层依赖的是Map) 将键映射到值的对象 一个映射不能包含重复的键 每个键最多只能映射到一个值 B:Map接口和Collection接口的不同 Map是双列的(是双列集合的根接口),Collection是单列的(是单列集合的根接口) Map的键唯一,Collection的子体系Set是唯一的 Map集合的数据结构值针对键有效,跟值无关;如:TreeMap:键是用二叉树算法,HashMap:键是hash算法, Collection集合的数据结构是针对元素有效 图解:…
代码块含义:使用{ }括起来的代码 代码块类型: 1.局部代码块:定义在方法体中. 2.构造代码块:也叫初始化代码块,定义在类中方法体之外. 3.静态代码块:定义在类中方法体之外,被static修饰符所修饰, 随着类加载而执行. 4.同步代码块:在Java的多线程中,为解决并发操作可能造成的异常, 而引入同步监视器,使用同步监视器的通用方法就是同步代码块. 构造代码块VS构造方法: 在Java程序中构造代码块先执行,然后才是构造方法. 静态代码块:用static修饰的代码块 1.可以有输出语句.…
1.Map集合概述和特点 * A:Map接口概述  * 查看API可以知道:          * 将键映射到值的对象          * 一个映射不能包含重复的键          * 每个键最多只能映射到一个值 * B:Map接口和Collection接口的不同      * Map是双列的,Collection是单列的      * Map的键唯一,Collection的子体系Set是唯一的      * Map集合的数据结构值针对键有效,跟值无关;Collection集合的数据结构是针…
该Demo只是斗地主的游戏的一部分,实现的斗地主的组合牌  洗牌  发牌 看牌的功能,主要应用Map集合进行练习 package cn.lijun import java.util.ArrayList;import java.util.Collections;import java.util.HashMap; public class PlayDiZhu { public static void main(String[] args) { // 组合牌      //创建Map集合,键是编号,值…