Map-->HashMap练习(新手)
//导入的包。
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练习(新手)的更多相关文章
- Collections+Iterator 接口 | Map+HashMap+HashTable+TreeMap |
Collections+Iterator 接口 1. Collections 是一个操作 Set.List 和 Map 等集合的工具类 Collections 中提供了大量方法对集合元素进行排序.查询 ...
- ES6 & Map & hashMap
ES6 & Map & hashMap 01 two-sum https://leetcode.com/submissions/detail/141732589/ hashMap ht ...
- Map HashMap 排序 迭代循环 修改值
HashMap dgzhMap = Dict.getDict("dgzh"); Iterator it_d = dgzhMap.entrySet().iterator(); whi ...
- Map随笔:最常用的Map——HashMap
目录 Map随笔:最常用的Map--HashMap 前言: 1,HashMap的结构 2,HashMap的一些属性(JDK8) 3,HashMap的构造函数(JDK8) 4,HashMap的一些方法( ...
- [Java] Map / HashMap - 源代码学习笔记
Map 1. 用于关联 key 和 value 的对象,其中 key 与 key 之间不能重复. 2. 是一个接口,用来代替 Java 早期版本中的 Dictionary 抽象类. 3. 提供三种不同 ...
- 高并发第九弹:逃不掉的Map --> HashMap,TreeMap,ConcurrentHashMap
平时大家都会经常使用到 Map,面试的时候又经常会遇到问Map的,其中主要就是 ConcurrentHashMap,在说ConcurrentHashMap.我们还是先看一下, 其他两个基础的 Map ...
- Map / HashMap 获取Key值的方法
方法1:keySet()HashMap hashmp = ne HashMap();hashmp.put("aa", "111");Set set = hash ...
- Map:HashMap和TreeMap
一.Map集合 特点:将键映射到值得对象 Map集合和Collection集合的区别? Collection:是单列集合,存储的是单独出现的元素 Map: 是双列集合,存储的是键值对形式 ...
- Java集合 之Map(HashMap、Hashtable 、TreeMap、WeakHashMap )理解(new)
HashMap 说明: 在详细介绍HashMap的代码之前,我们需要了解:HashMap就是一个散列表,它是通过“拉链法”解决哈希冲突的.还需要再补充说明的一点是影响HashMap性能的有两个参数:初 ...
- golang 多维哈希(map,hashmap)实践随笔
有些场景使用多维哈希来存储数据,时间复杂度恒定,简单粗暴好用.这里记录一下. 如下是三维哈希的简单示意图,建议层数不要太多,否则时间久了,自己写的代码都不认识. 下图是三维哈希在内存的存储形式,has ...
随机推荐
- 洛谷 P1220 关路灯 题解
Description 有 $n$ 盏路灯,每盏路灯有坐标(单位 $m$)和功率(单位 $J$).从第 $c$ 盏路灯开始,可以向左或向右关闭路灯.速度是 $1m/s$.求所有路灯的最少耗电.输入保证 ...
- 如何创建Hexo站点的Tags和Categories默认页面
安装Hexo的categories生成插件 1 $ npm install hexo-generator-category --save 安装Hexo的Tags生成插件 1 $ npm install ...
- 关于Synchornized,Lock,AtomicBoolean和volatile的区别介绍
1. volatile 变量可以被看作是一种 "程度较轻的 synchronized". 2. Lock 实现提供了比使用 synchronized 方法和语句可获得的更广泛的 ...
- ASP.NET MVC4网站搭建与发布【最新】
ASP.NET MVC4网站搭建与发布 一些往事 2015年,仅仅大二的我怀着一颗创业之心,加入了常熟派英特,成为阳光职场平台的创始之一,并肩负了公司技术部的大梁,当时阳光职场正在从线下服务向互联网化 ...
- laravel-事件
1.注册事件以及监听器 首先我们需要在 app/Providers/目录下的EventServiceProvider.php中注册事件监听器映射关系,如下: /** * The event liste ...
- 测试一个数字是否等于 NaN
ES6提供了一个新的 Number.isNaN() 函数,这是一个不同的函数,并且比老的全局 isNaN() 函数更可靠.
- StringUtil中isBlank(),idNUll,isEmpty的区别
StringUtils 方法的操作对象是 java.lang.String 类型的对象,是 JDK 提供的 String 类型操作方法的补充,并且是 null 安全的(即如果输入参数 String 为 ...
- C++走向远洋——67(项目二、洗牌)
*/ * Copyright (c) 2016,烟台大学计算机与控制工程学院 * All rights reserved. * 文件名:text.cpp * 作者:常轩 * 微信公众号:Worldhe ...
- 【5min+】保持程序健康的秘诀!AspNetCore的HealthCheck
系列介绍 [五分钟的dotnet]是一个利用您的碎片化时间来学习和丰富.net知识的博文系列.它所包含了.net体系中可能会涉及到的方方面面,比如C#的小细节,AspnetCore,微服务中的.net ...
- 网络编程模型(C/S模型和B/S模型)
目录 网络应用编程模型 互联网与企业内部网 早期计算机网络的通信模型 C/S模式 B/S模式 B/S 和 C/S 的区别 网络应用编程模型 互联网与企业内部网 网络的两个含义: 互联网 :互联网(In ...