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 ...
随机推荐
- 吴裕雄--天生自然 R语言开发学习:图形初阶(续二)
# ----------------------------------------------------# # R in Action (2nd ed): Chapter 3 # # Gettin ...
- setContext or setCharacterEncoding
request.setCharacterEncoding()是设置从request中取得的值或从数据库中取出的值response.setContentType("text/html;char ...
- JavaScript 中事件对象参数:clientX、clientY、offsetX、offsetY、screenX、screenY
JavaScript 中一些概念理解 :clientX.clientY.offsetX.offsetY.screenX.screenY clientX 设置或获取鼠标指针位置相对于窗口客户区域的 x ...
- <SCOI2009>粉刷匠の思路
emm.dp真的是写不来啊难过 不边写边注释我就挂了 #include<cstdio> #include<cstring> #include<iostream> # ...
- JavaScript值类型和引用类型有哪些
JavaScript值类型和引用类型有哪些 (1)值类型:数值.布尔值.null.undefined. (2)引用类型:对象.数组.函数.
- Android 添加framework资源包
为Android系统添加一个新的资源包 概述 传统的Android系统只有一个framework-res.apk资源包,第三方厂商在进行rom定制时会直接修改framework res资源,达到适配目 ...
- The Integers and the Real Numbers
以上我們談了一些 邏輯的基礎,接下來我們會談一些 數學的基礎,也就是整數與實數系統.其實我們已經用了很多,非正式地,接下來我們會正式地討論他們. 要 建構 實數系統的一個方法就是利用公理跟集合論來建構 ...
- 记一个 Base64 有关的 Bug
本文原计划写两部分内容,第一是记录最近遇到的与 Base64 有关的 Bug,第二是 Base64 编码的原理详解.结果写了一半发现,诶?不复杂的一个事儿怎么也要讲这么长?不利于阅读和理解啊(其实是今 ...
- git指令-添加远程仓库
git指令-添加远程仓库 首先在GitHub上创建属于你自己的远程仓库:例如我创建的远程仓库mybatis用于我最近保存的mybatis代码 目前,在GitHub上的这个learngit仓库还是空的, ...
- PostgreSQL没有认证密码就登陆了缘由
上午同事爆出这样的问题,使用正确的用户名和错误的密码连接了postgresql数据库,竟然连上了.这不是故意这样神操作,不小心密码写错了,咋一看这样怎么能行,随便输入一个密码都能登陆上.自己测试也是同 ...