ListSetAndMap
package com.collection.test; import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set; /**
* Java中的list、set、map遍历总结
* @author xiaoyin
*
*/
public class ListSetAndMap { public static void main(String[] args) {
// List集合的遍历
testList();
// Set集合的遍历
testSet();
// Map集合的遍历
testMap();
} /**
* 遍历map集合的方法:
* 1.使用keySet()获得key的set集合,然后使用Iterator迭代器或foreach遍历set即可,但是只能直接取出key,再通过key取出value,两种方法
* 2.使用entrySet()获得key-value的set集合,然后使用Iterator迭代器或foreach遍历set即可,可同时取出key和value,两种方法
*/
private static void testMap() {
Map<String, String> maps = new HashMap<>();
maps.put("001", "Java");
maps.put("002", "Spring");
maps.put("003", "SpringMVC");
maps.put("004", "Mybatis"); // Map遍历方法1-1: 使用keySet得到key的Set集合,再使用foreach遍历Set集合
Set<String> keySet = maps.keySet();
for (String ss : keySet) {
String key = ss;
String value = maps.get(ss);
System.out.println(key + ":" + value);
}
// Map遍历方法1-2: 使用keySet得到key的Set集合,再使用Iterator迭代器遍历
Iterator<String> iterator = keySet.iterator();
while (iterator.hasNext()) {
String key = iterator.next();
String value = maps.get(key);
System.out.println(key + ":" + value);
}
// Map遍历方法2-1: 使用entrySet()获得key-value的Set集合,然后使用foreach遍历Set即可
Set<Entry<String, String>> entrySet = maps.entrySet();
for (Entry<String, String> entry : entrySet) {
String key = entry.getKey();
String value = entry.getValue();
System.out.println(key + ":" + value);
}
// Map遍历方法2-2: 使用entrySet()获得key-value的Set集合,然后使用Iterator迭代器遍历
Iterator<Entry<String, String>> entryIt = entrySet.iterator();
while (entryIt.hasNext()) {
Map.Entry<String, String> entry = (Entry<String, String>) entryIt.next();
String key = entry.getKey();
String value = entry.getValue();
System.out.println(key + " : " + value);
}
} /**
* 遍历Set集合的方法:
* 1.使用foreach遍历
* 2.使用Iterator迭代器
* 3.将Set集合转换为List再遍历
*/
private static void testSet() {
Set<String> set = new HashSet<>();
set.add("Set111");
set.add("Set222");
set.add("Set333");
set.add("Set444"); // 2-1 使用foreach遍历
for (String value : set) {
System.out.println(value);
}
// 2-2 使用Iterator迭代器
Iterator<String> iterator = set.iterator();
while(iterator.hasNext()){
String value = iterator.next();
System.out.println(value);
}
// 2-3 将Set集合转换为List再遍历
List<String> setList = new ArrayList<>(set);//set转list
// 遍历方法 (可用list遍历方式去遍历)
for (String value : setList) {
System.out.println(value);
}
} /**
* 遍历List集合的方法:
* 1.使用for循环遍历
* 2.使用Iterator迭代器
* 3.使用foreach遍历
*/
private static void testList() {
List<String> list = new ArrayList<>();
list.add("林徽因");
list.add("陆小曼");
list.add("阮玉玲");
list.add("周璇"); // 1-1 使用for循环遍历
for (int i = 0; i < list.size(); i++) {
String value = list.get(i);
System.out.println(value);
}
// 1-2 使用Iterator循环遍历
for(Iterator<String> iterator = list.iterator();iterator.hasNext();){
String value = iterator.next();
System.out.println(value);
}
// 1-3 使用foreach遍历
for (String value : list) {
System.out.println(value);
}
} }
ListSetAndMap的更多相关文章
随机推荐
- Java 代码快速注释 和 取消注释
注释掉代码: 把要注释的代码选中: 加/* */ 形式的注释 -> Ctrl+Shift+/ 加 //形式的形式的注释 -> ctrl+/ 取消代码注释: 把要取消注释的代码选中: ...
- python 操作mysql数据库(mac)包括如何处理安装MySQL-python
一.数据库的安装,https://www.jianshu.com/p/fd3aae701db9 https://jingyan.baidu.com/article/fa4125ac0e3c2 ...
- MySQL简单管理
基础入门 ============管理MySQL========== .查看MySQL版本 mysqladmin --version .启动MySQL /etc/init.d/mysqld start ...
- 新式类__new__()方法
概述 __new__() 是在新式类中新出现的方法,在 Python 中类实例化时,__new__()方法用在 __init__() 启动之前,决定是否要使用该 __init__() 方法,因为__n ...
- IOS上的 Audio Memos SE 如何分享和传输录音到电脑?
Audio Memos SE 是 Audio Memos 的精简版 ,顾名思义就是少了很多实用功能.当初下载这个就是因为广告比较少一些,没有全屏幕的广告. 好了,录了音,想分享和传到电脑要怎么弄呢? ...
- CRLF——http response 拆分攻击(webgoat)
0x01 什么是CRLF CRLF是“回车+换行”(\r和\n)/(%0d和%0a)的简称. CRLF利用: 正常输入的请求中加入恶意代码,控制HTTP响应header中的字符(Location,Se ...
- SIFT学习笔记之二 特征提取
特征提取函数: int _sift_features( IplImage* img, struct feature** feat, int intvls, double sigma, double c ...
- 第3课.进化后的const
1.c语言中 const修饰的变量是只读的,本质上还是变量 const修饰的局部变量在栈上分配空间(因为在栈上分配空间,所以我们可以通过改变这个空间的值.间接去改变这个变量.) const修饰的全局变 ...
- 【leetcode算法-简单】14. 最长公共前缀
[题目描述] 编写一个函数来查找字符串数组中的最长公共前缀. 如果不存在公共前缀,返回空字符串 "". 示例 1: 输入: ["flower","fl ...
- mysql的binlog安全删除的一种方法
指定过期天数(expire_logs_days) ---适用于单机版mysql! 该参数为全局可动态调整参数,默认值为0,即关闭,取值范围0-99. 1.3.1 参数的查看: mysql> ...