//导入的包。
import java.util.*;
//创建的一个类。
public class zylx1 {
  //公共静态的主方法。
public static void main(String[] args){
    //调用方法。
lx4();
}
//创建方法。
private static void lx1() {
//创建一个集合元素。
//此类实现 Set 接口,由哈希表(实际上是一个 HashMap 实例)支持。
// 它不保证 set 的迭代顺序;特别是它不保证该顺序恒久不变。此类允许使用 null 元素。
Set<String> set = new HashSet<>();
//添加元素。
set.add("李白");
set.add("李白1");
set.add("李白2");
set.add("李白3");
set.add("李白4");
set.add("李白5");
set.add("李白6");
set.add("李白7"); //增强for循环遍历。
for (String s:set){
System.out.println(s);
}
System.out.println("==================");
//迭代器遍历。
Iterator<String> it = set.iterator();
//while判断有没有下一个元素
while (it.hasNext()){
System.out.println(it.next());
} }
public static void lx2(){
/* Set<String> set = new HashSet<String>();
set.add("1");
set.add("2");
set.add("3");
set.add("4");
set.add("5");
System.out.println(set);
*/
System.out.println("========================");
     //创建一个集合。
Set<Person> set = new HashSet<Person>();
     //添加元素。
set.add(new Person("诗仙三号",451));
set.add(new Person("诗仙一号",452));
set.add(new Person("诗仙二号",453));
set.add(new Person("诗仙四号",454));
Iterator<Person> it = set.iterator();
while (it.hasNext()){
//重新定义Person类,使其获取元素。
//it.next 只能出现一次。否则会报异常。
Person s = it.next();
System.out.println(s.getName()+s.getAge());
}
// for (Person i:set){
// System.out.println(i);
// }
}
public static void lx3(){
//创建map集合。Map它是一个完全抽象的类而不是接口。HashMap是基于哈希表实现的Map接口。
Map<Integer,String> map = new HashMap<>();
//添加键位和元素。将键映射到值的对象。 不能包含重复的键; 每个键可以映射到最多一个值。
//put就是map方法里的添加方法。
map.put(1," 张无忌");
map.put(2,"白居易");
map.put(3,"八十五");
map.put(3,"伍六七");
//键值不允许重复,如果重复会覆盖掉之前的值。
//可以根据下标进行排序。
map.put(0,"刺客伍六七");
System.out.println(map);
//删除为键位为1的元素并且打印。
String s = map.remove(1);
System.out.println(map);
//选出键位为3的元素并且打印。
String s1 = map.get(3);
System.out.println(s1);
}
public static void lx4(){
//创建map集合。
Map<String, String> m = new HashMap<>();
//添加键和值。
m.put("天龙八部","倚天屠龙");
m.put("上官疯子","宏茂莎霞");
m.put("辉煌龙儿","纱帽滞胀");
//通过键位获得它的value值。
Set<String> s = m.keySet();
//创建迭代器。
Iterator<String> it = s.iterator();
while (it.hasNext()){
//获得key元素。(键)
String key = it.next();
//获得键所在位置后面的value值。
String value = m.get(key);
//System.out.println(key+""+value);
}
for (String id:m.keySet()){
String value1 =m.get(id);
System.out.println(id+""+value1);
}
}
public static void lx5(){ } }

Map-->HashMap练习(新手)的更多相关文章

  1. Collections+Iterator 接口 | Map+HashMap+HashTable+TreeMap |

    Collections+Iterator 接口 1. Collections 是一个操作 Set.List 和 Map 等集合的工具类 Collections 中提供了大量方法对集合元素进行排序.查询 ...

  2. ES6 & Map & hashMap

    ES6 & Map & hashMap 01 two-sum https://leetcode.com/submissions/detail/141732589/ hashMap ht ...

  3. Map HashMap 排序 迭代循环 修改值

    HashMap dgzhMap = Dict.getDict("dgzh"); Iterator it_d = dgzhMap.entrySet().iterator(); whi ...

  4. Map随笔:最常用的Map——HashMap

    目录 Map随笔:最常用的Map--HashMap 前言: 1,HashMap的结构 2,HashMap的一些属性(JDK8) 3,HashMap的构造函数(JDK8) 4,HashMap的一些方法( ...

  5. [Java] Map / HashMap - 源代码学习笔记

    Map 1. 用于关联 key 和 value 的对象,其中 key 与 key 之间不能重复. 2. 是一个接口,用来代替 Java 早期版本中的 Dictionary 抽象类. 3. 提供三种不同 ...

  6. 高并发第九弹:逃不掉的Map --> HashMap,TreeMap,ConcurrentHashMap

    平时大家都会经常使用到 Map,面试的时候又经常会遇到问Map的,其中主要就是 ConcurrentHashMap,在说ConcurrentHashMap.我们还是先看一下, 其他两个基础的 Map ...

  7. Map / HashMap 获取Key值的方法

    方法1:keySet()HashMap hashmp = ne HashMap();hashmp.put("aa", "111");Set set = hash ...

  8. Map:HashMap和TreeMap

    一.Map集合     特点:将键映射到值得对象 Map集合和Collection集合的区别? Collection:是单列集合,存储的是单独出现的元素    Map: 是双列集合,存储的是键值对形式 ...

  9. Java集合 之Map(HashMap、Hashtable 、TreeMap、WeakHashMap )理解(new)

    HashMap 说明: 在详细介绍HashMap的代码之前,我们需要了解:HashMap就是一个散列表,它是通过“拉链法”解决哈希冲突的.还需要再补充说明的一点是影响HashMap性能的有两个参数:初 ...

  10. golang 多维哈希(map,hashmap)实践随笔

    有些场景使用多维哈希来存储数据,时间复杂度恒定,简单粗暴好用.这里记录一下. 如下是三维哈希的简单示意图,建议层数不要太多,否则时间久了,自己写的代码都不认识. 下图是三维哈希在内存的存储形式,has ...

随机推荐

  1. 吴裕雄--天生自然python学习笔记:Python3 网络编程

    Python 提供了两个级别访问的网络服务.: 低级别的网络服务支持基本的 Socket,它提供了标准的 BSD Sockets API,可以访问底层操作系统Socket接口的全部方法. 高级别的网络 ...

  2. Ubuntu gnome安装Monaco字体,FontForge module is probably not installed

    首先下载原始Monaco字体,注意我只找到了这一款在ubuntu的gnome下可见,其他的各种monaco即使安装了也看不到. https://gist.github.com/epegzz/16342 ...

  3. Nginx笔记总结二:Nginx编译参数

    -prefix=                                                    安装路径-with-http_ssl_module               ...

  4. 押宝在Apple Watch的智能手表游戏玩得转吗?

    Watch的智能手表游戏玩得转吗?" title="押宝在Apple Watch的智能手表游戏玩得转吗?"> 如果你给法拉利跑车贴上金箔,会被认为是俗气.但若在Ap ...

  5. 转: zabbix对cisco2960的监控

    转自:http://blog.chinaunix.net/uid-12115233-id-3561954.html 1:首先在官网下载Cisco2950 模板https://www.zabbix.co ...

  6. Java并发 - (无锁)篇6

    , 摘录自葛一鸣与郭超的 [Java高并发程序设计]. 本文主要介绍了死锁的概念与一些相关的基础类, 摘录自葛一鸣与郭超的 [Java高并发程序设计]. 无锁是一种乐观的策略, 它假设对资源的访问是没 ...

  7. C++ 标准IO

    标准输入 gets() 1 char * (char *str) gets() 主要是从标准输入流读取字符串并回显,读到换行符时退出,并会将换行符省去. 返回值为获得的字符串的首地址. 123 cha ...

  8. Dungeon Master (三维BFS)

    题目: You are trapped in a 3D dungeon and need to find the quickest way out! The dungeon is composed o ...

  9. 递归、尾递归和使用Stream延迟计算优化尾递归

    我们在学数据结构的时候必然会接触栈(Stack),而栈有一个重要的应用是在程序设计语言中实现递归.递归用途十分广泛,比如我们常见的阶乘,如下代码: 1234 public static int (in ...

  10. 14、创建/恢复ETH钱包身份

    借助网上的一段描述: 若以银行账户为类比,这 5 个词分别对应内容如下: 地址=银行卡号密码=银行卡密码私钥=银行卡号+银行卡密码助记词=银行卡号+银行卡密码Keystore+密码=银行卡号+银行卡密 ...