Java集合Map<K,V>,HashMap<K,V>的使用,for循环正解
来源:互联网 发布:ledrom编辑软件 编辑:程序博客网 时间:2024/05/01 14:21
工作内容:
java集合Map<K,V>,HashMap<K,V>的使用
学习分享:
Map<K,V>
HashMap<K,V>:键值对,键值唯一,存储时(调用put(K,V)方法)键值与已有的键值相同,则新的V值覆盖原V值。
Set<String> keys = map.keySet();//返回此映射中所包含的键的 Set 视图。keys会随着map的变化而变化
Set<Integer> keySet = map.keySet();
Map.put或map.remove操作,看keySet是否跟着变化
Iterator<Integer> keys= keySet.iterator();
while (keys.hasNext()) {
System.out.println(map.get(keys.next()));
}
For循环理解
循环语句:for([表达式1];[表达式2],[表达式3]){循环体4 }【分号一个都不能少】
1.执行步骤:1→2→4→3→2→4→...
2.当1不存在时:继续往后执行
3.当2不存在时或者是true时:默认for语句可以永远执行下去,遇到break,return则退出循环。
4.当3不存在时,需在2后面添加“;”
测试用例:
import java.util.Collection;import java.util.HashMap;import java.util.Iterator;import java.util.Map;import java.util.Map.Entry;import java.util.Set;public class MapDemo {public static void main(String[] args) {Map<Integer, String> map = new HashMap<Integer, String>();map.put(1, "花花");map.put(2, "草草");map.put(3, "叶叶");map.put(4, "瓶瓶");map.put(4, "新瓶瓶");System.out.println(map);Set<Integer> keySet = map.keySet();// 测试keyset是否是会跟随map的变化而变化// 结果:是map.put(5, "点点");map.remove(2);Iterator<Integer> keys = keySet.iterator();while (keys.hasNext()) {System.out.println(map.get(keys.next()));}Set<Entry<Integer, String>> entries = map.entrySet();for (Entry<Integer, String> entry : entries) {System.out.println(entry);}// 获取valueCollection<String> collection = map.values();System.out.println(collection);// 使用for-each输出value值for (String string : collection) {System.out.println(string);}System.out.println("使用迭代器遍历:");// for语句的使用for(表达式1;表达式2;表达式3){ 内容4 }for (Iterator iterator = collection.iterator(); iterator.hasNext();) {String string = (String) iterator.next();System.out.println(string);}String[] name = { "tym", "cww", "tym", "flj", "tym", "flj" };Map<String, Integer> map2 = new HashMap<String, Integer>();// 在添加过程中,把value设置为出现的次数for (int i = 0; i < name.length; i++) {if (!map2.containsKey(name[i])) {map2.put(name[i], 1);} else {map2.put(name[i], map2.get(name[i]) + 1);}}System.out.println(map2);}}
0 0
- Java集合Map<K,V>,HashMap<K,V>的使用,for循环正解
- Java集合Map<K,V>
- Map<K,V>的使用
- Java集合之Hashtable<K,V>,TreeMap<K,V>,HashMap<K,V>自动排序
- hashMap等Map集合<K,V>为空情况
- java.util.HashMap<K,V>
- Java 处理Map<K,V>的方法
- 深入学习java集合:HashMap<K,V>实现
- 获取 map 的K V
- 【源码分析】HashMap的put(K k,V v)方法
- HashMap<K, V>泛型类
- HashMap<K, V>泛型类
- HashMap<K, V>泛型类
- HashMap<K, V>泛型类
- HashMap<K,V>详解
- 遍历Map<k,v> k,v的几种方法
- 接口 Map<K,V>
- Map<K,V>
- synchronized同步的弊端以及Lock针对的解决方案
- 新浪、UC、金山、华为的网盘统统都关了,真的是为了配合国家政策吗?
- 读书笔记|《第一行代码android》之组件篇
- Android中的Web Service学习(一)——Web Service介绍
- maven工程引用仓库中没有的包
- Java集合Map<K,V>,HashMap<K,V>的使用,for循环正解
- Layer2交换机QinQ和VTP
- Hibernate 笔记(2)-封装HibernateSessionFactory
- 如何使用OpenCV函数 remap 来实现简单重映射
- js实现表格添加数据
- 把过程与函数说透
- Windows安装WAMP详细教程
- sublime text3打开文件,中文乱码问题解决办法
- javax.servlet.*需要的两个包