//导入的包。
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. Beautiful Soup的用法(五):select的使用

    原文地址:http://www.bugingcode.com/blog/beautiful_soup_select.html select 的功能跟find和find_all 一样用来选取特定的标签, ...

  2. 用了python多进程,我跑程序花费的时间缩短了4倍

    应用场景:本人需要对200万条网页html格式数据进行清洗,提取文字后将分词结果写入数据库,之前做了一次,大概花费了80多个小时才跑完.机器配置是4核,内存8G:开完会领导让再改点东西重新跑一遍,然后 ...

  3. scatter散点图

    import matplotlib.pyplot as plt import numpy as np n = 1024 X = np.random.normal(0,1,n) Y = np.rando ...

  4. 用Gitolite搭建服务器上的Git

    使用git作为版本控制工具,确实非常流行且好用,常用的git代码服务器有Github还是国内的Gitcafe和OSC都是很不错,可以免费存放一些开源的项目代码,对于私人项目,则需要支付一定的费用.同时 ...

  5. ReadHub项目Kotlin版开发指南(三、MVP架构)

    ReadHub项目Kotlin版转换指南(一.环境搭建) ReadHub项目Kotlin版转换指南(二.数据库和网络请求) ReadHub项目Kotlin版转换指南(三.MVP架构) Android ...

  6. 5G时代,什么将会消失?

    ​​5G时代说着说着就来了,当然,它不可能一撮而就,但正如4G.移动互联网和WIFI这些东西基本上是日益精进的水平,现如今饭馆的生意是否火爆,不仅仅在于其菜品和服务的质量,更在于他们有没有WIFI以及 ...

  7. 在使用vue+webpack模版创建的项目中使用font-awesome

    前言:最近使用vue+webpack进行一个小项目的开发,按照官方模版文档完成项目初始化后打算引入ont-awesome字体图标库进行使用,引入过程中遇到一些问题并解决,现记录如下. 一开始进展很顺利 ...

  8. Twins:眼红红 - fancybot的博客

    "我最初面红.现在双眼通红" TWINS 听听歌.小时候.听得最最最多的就是TWINS的了 跳过图片 跳过歌词 眼红红 Twins 仍然怀念他 一起去学结他 一对黑眼圈 回望中三暑 ...

  9. 达拉草201771010105《面向对象程序设计(java)》第四周学习总结

    实验四类与对象的定义及使用 实验时间 2018-9-20 第一部分:理论知识 1.类与对象概念 (1)类是具有相同属性和方法的一类事物的抽象,是构造对象的模板或蓝图,由类构造对象的过程称为创建类的实例 ...

  10. C++对拍

    作为一名OIer,比赛时,对拍是必须的 不对拍,有时可以悔恨终身 首先,对拍的程序 一个是要交的程序 另一个可以是暴力.搜索等,可以比较慢,但是必须正确 下面是C++版对拍程序(C++ & c ...