java HashMap的keyset实例
一个简单的例子
//a simple demo
import java.util.HashMap;
import java.util.Set;
public class TestHashMap {
public static void main(String[] args) {
HashMap<Integer, Integer> G = new HashMap<Integer,Integer>();
G.put(1, 1); G.put(2, 4);
G.put(3, 9); G.put(4, 16);
Set<Integer> set = G.keySet();
set.remove(3);
System.out.println(G.size());//print 3
}
}
相关推荐
-
java中Hashtable和HashMap的区别分析
1.Hashtable是Dictionary的子类, 复制代码 代码如下: public class Hashtable<K,V> extends Dictionary<K,V> implements Map<K,V>, Cloneable, java.io.Serializable HashMap: 复制代码 代码如下: public class HashMap<K,V> extends AbstractMap<K,V>
-
Java中对HashMap的深度分析
在Java的世界里,无论类还是各种数据,其结构的处理是整个程序的逻辑以及性能的关键.由于本人接触了一个有关性能与逻辑同时并存的问题,于是就开始研究这方面的问题.找遍了大大小小的论坛,也把<Java 虚拟机规范>,<apress,.java.collections.(2001),.bm.ocr.6.0.shareconnector>,和<Thinking in Java>翻了也找不到很好的答案,于是一气之下把JDK的 src 解压出来研究,扩然开朗,遂写此文,跟大家分享感
-
举例详解Java编程中HashMap的初始化以及遍历的方法
一.HashMap的初始化 1.HashMap 初始化的文艺写法 HashMap 是一种常用的数据结构,一般用来做数据字典或者 Hash 查找的容器.普通青年一般会这么初始化: HashMap<String, String> map = new HashMap<String, String>(); map.put("Name", "June"); map.put("QQ", "2572073701"
-
Java中HashMap和TreeMap的区别深入理解
首先介绍一下什么是Map.在数组中我们是通过数组下标来对其内容索引的,而在Map中我们通过对象来对对象进行索引,用来索引的对象叫做key,其对应的对象叫做value.这就是我们平时说的键值对. HashMap通过hashcode对其内容进行快速查找,而 TreeMap中所有的元素都保持着某种固定的顺序,如果你需要得到一个有序的结果你就应该使用TreeMap(HashMap中元素的排列顺序是不固定的). HashMap 非线程安全 TreeMap 非线程安全 线程安全 在Java里,线程安全一般体
-
java无锁hashmap原理与实现详解
java多线程环境中应用HashMap,主要有以下几种选择:使用线程安全的java.util.Hashtable作为替代使用java.util.Collections.synchronizedMap方法,将已有的HashMap对象包装为线程安全的.使用java.util.concurrent.ConcurrentHashMap类作为替代,它具有非常好的性能.而以上几种方法在实现的具体细节上,都或多或少地用到了互斥锁.互斥锁会造成线程阻塞,降低运行效率,并有可能产生死锁.优先级翻转等一系列问题.
-
Java中HashMap和Hashtable及HashSet的区别
Hashtable类 Hashtable继承Map接口,实现一个key-value映射的哈希表.任何非空(non-null)的对象都可作为key或者value. 添加数据使用put(key,value),取出数据使用get(key),这两个基本操作的时间开销为常数. Hashtable通过initial capacity和load factor两个参数调整性能.通常缺省的load factor 0.75较好地实现了时间和空间的均衡.增大load factor可以节省空间但
-
java HashMap通过value反查key的代码示例
复制代码 代码如下: import java.util.ArrayList;import java.util.HashMap;import java.util.Iterator;import java.util.Map;import java.util.Set;public class MapValueGetKey { public static void main(String[] args) { Map map = new HashMap<>(); map.put(1,&qu
-
JAVA HashMap详细介绍和示例
第1部分 HashMap介绍HashMap简介HashMap 是一个散列表,它存储的内容是键值对(key-value)映射.HashMap 继承于AbstractMap,实现了Map.Cloneable.java.io.Serializable接口.HashMap 的实现不是同步的,这意味着它不是线程安全的.它的key.value都可以为null.此外,HashMap中的映射不是有序的.HashMap 的实例有两个参数影响其性能:"初始容量" 和 "加载因子".容量
-
java HashMap详解及实例代码
java HashMap /* * Map集合的特点 * 将键映射值的对象,一个映射不能包含重复的值:每个键最多只能映射到一个值 * * Map集合和Collection集合的区别? * Map集合存储元素是成对出现的,Map集合的键是唯一的,就是可重复的.可以把这个理解为:夫妻对 * Collection集合存储元素是单独出现的,Collection的儿子Set是唯一的,List是可重复的,可以把这个理解为:光棍 * * 注意: * Map集合的数据结构值针对键有效,限值无效 * Collec
-
java遍历HashMap简单的方法
本文实例讲述了java遍历HashMap简单的方法.分享给大家供大家参考.具体实现方法如下: import java.util.HashMap; import java.util.Iterator; import java.util.Set; public class HashSetTest { public static void main(String[] args) { HashMap map = new HashMap(); map.put("a", "aa"
-
基于Java HashMap的死循环的启示详解
一.单线程改造为多线程也是个技术活 正如我们看到耗子叔叔博客里写的那样,原来是单线程的应用程序,"后来,我们的程序性能有问题,所以需要变成多线程的,于是,变成多线程后到了线上,发现程序经常占了100%的CPU". 考虑到是淘宝的工程师曝出来的问题,他们的技术基础一般都很扎实,连他们都用错了,所以把单线程改造为多线程并不是想象中的那么简单,我认为. 你可能很不服气地反问,淘宝的工程师又怎么了,单线程改为多线程有什么难的?无非就是应用现有的多线程技术嘛,你看,我有非常强烈的线程安全意识,我
随机推荐
- 防止adsl用户被入侵的一些技巧与设置方法
- 图片格式的JavaScript和CSS速查手册
- js无提示关闭浏览器窗口的两种方法分析
- 建立完全独立的JS对象
- PHP 登录完成后如何跳转上一访问页面
- PHP使用curl模拟post上传及接收文件的方法
- PHP编程函数安全篇
- Python3遍历目录树实现方法
- Python中Django框架下的staticfiles使用简介
- 使用rpclib进行Python网络编程时的注释问题
- Python中的特殊语法:filter、map、reduce、lambda介绍
- C++事件处理中的__hook与__unhook用法详解
- JS+css 图片自动缩放自适应大小
- 静态页面html中跳转传值的JS处理技巧
- PHP中执行cmd命令的方法
- PowerShell中使用GetType获取变量数据类型
- nginx虚拟主机配置实例详解
- 数据结构之位图(bitmap)详解
- C# GDI在控件上绘图的方法
- spring boot 学习笔记(入门篇)