【Java】集合遍历--List和Map的多种遍历方式
1. List的两种遍历方式
package com.nova.test; import java.util.ArrayList;
import java.util.Iterator;
import java.util.List; public class ListDemo {
public static void main(String[] args) {
List<String> list = new ArrayList<String>();
list.add("super");
list.add("nova");
list.add("supernova");
list.add("go"); // 通过Iterator的方式遍历
Iterator<String> iterator = list.iterator();
while (iterator.hasNext()) {
String str = iterator.next();
System.out.println(str);
} list.add(1, "star");// 在1位置处添加元素
list.remove(list.size() - 1);// 删除列表最后一个元素 System.out.println("通过增强for循环遍历");
// 通过增强for循环遍历
for(String str:list) {
System.out.println(str);
}
}
}
2. Map的三种遍历方式
package com.nova.test; import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set; public class MapDemo {
public static void main(String[] args) {
Map<Integer,String> map = new HashMap<Integer,String>();
//存放数据
map.put(1,"super");
map.put(2,"nova");
map.put(3,"supernova"); //通过Set遍历
System.out.println("通过Set遍历");
Set<Integer> set1 = map.keySet();
Iterator<Integer> iterator1 = set1.iterator();
while(iterator1.hasNext()) {
Integer id = iterator1.next();
System.out.println(id+" "+ map.get(id));
} map.put(2,"star");//覆盖替换key为2的值 //通过EntrySet遍历
System.out.println("通过EntrySet遍历");
Set<Map.Entry<Integer,String>> set2 = map.entrySet();
Iterator<Map.Entry<Integer,String>> iterator2 = set2.iterator();
while(iterator2.hasNext()) {
Map.Entry<Integer,String> entry = iterator2.next();
System.out.println(entry.getKey()+" "+entry.getValue());
} map.remove(1);//删除key为1的数
map.put(4,"hero");//添加数据 //通过增强for循环遍历
System.out.println("通过增强for循环遍历");
Set<Integer> set3 = map.keySet();
for(Integer num:set3) {
System.out.println(num+" "+map.get(num));
} }
}
【Java】集合遍历--List和Map的多种遍历方式的更多相关文章
- Java 集合系列14之 Map总结(HashMap, Hashtable, TreeMap, WeakHashMap等使用场景)
概要 学完了Map的全部内容,我们再回头开开Map的框架图. 本章内容包括:第1部分 Map概括第2部分 HashMap和Hashtable异同第3部分 HashMap和WeakHashMap异同 转 ...
- Java集合框架List,Map,Set等全面介绍
Java集合框架的基本接口/类层次结构: java.util.Collection [I]+--java.util.List [I] +--java.util.ArrayList [C] +- ...
- 【转】Java集合框架List,Map,Set等全面介绍
原文网址:http://android.blog.51cto.com/268543/400557 Java Collections Framework是Java提供的对集合进行定义,操作,和管理的包含 ...
- java 集合框架(十六)Map
一.概述 Map是一个包含键值对的集合,一个map不能有重复的键(key),而且每个键至多只能对应一个值.Map同Collection一样,它的所有通用实现都会提供一个转换器构造函数,接收一个Map类 ...
- java集合(list,set,map)
集合 集合与数组 数组(可以存储基本数据类型)是用来存现对象的一种容器,但是数组的长度固定,不适合在对象数量未知的情况下使用. 集合(只能存储对象,对象类型可以不一样)的长度可变,可在多数情况下使用. ...
- 34、Java集合框架List,Map,Set等全面介绍(转载)
Java Collections Framework是Java提供的对集合进行定义,操作,和管理的包含一组接口,类的体系结构. Java集合框架的基本接口/类层次结构: java.util.C ...
- Java 集合系列之五:Map基本操作
1. Java Map 1. Java Map 重要观点 Java Map接口是Java Collections Framework的成员.但是它不是Collection 将键映射到值的对象.一个映射 ...
- Java中关于 ArrayList 和 Map 的常用遍历方法 (学习笔记,便于以后查询)
一.学习ArrayList与Map时,关于常用遍历方法的记录如下: 二.附源码如下: package com.study.in.myself; import java.util.ArrayList; ...
- java集合学习(2):Map和HashMap
Map接口 java.util 中的集合类包含 Java 中某些最常用的类.最常用的集合类是 List 和 Map. Map 是一种键-值对(key-value)集合,Map 集合中的每一个元素都包含 ...
随机推荐
- leetcode Ch2-Dynamic Programming [2014]
1. Triangle class Solution { public: int minimumTotal(vector<vector<int> > &triangle ...
- jbd2/dm-2-8 io太高
用iotop查看发现[jbd2/dm-2-8]几乎占用了99%的io使用率,但是却没有输入输出 后来上网查找,网上有人说是个内核bug,需要升级内核,或者降低jdb2的提交次数,即重新挂载磁盘 添加c ...
- QT网络编程Tcp下C/S架构的即时通信
先写一个客户端,实现简单的,能加入聊天,以及加入服务器的界面. #ifndef TCPCLIENT_H #define TCPCLIENT_H #include <QDialog> #in ...
- Ubuntu下python的第三方module无法在pycharm中导入
换了台笔记本,新安装的requests module无法在pycharm导入: Traceback (most recent call last): File "/home/winsterc ...
- 【深入理解JAVA虚拟机】第二部分.内存自动管理机制.5.调优实战
高性能硬件上的程序部署策略 在高性能硬件上部署程序,目前主要有两种方式: 通过64位JDK来使用大内存. -- 缺点:GC停顿时间长 使用若干个32位虚拟机建立逻辑集群来利用硬件资源. -- 思 ...
- Linux 命令行 发送邮件
1.mail -s hi xx@yy.com 给xx@yy.com发一封主题为hi的信(没有正文) 编辑完内容后Ctrl-D结束. 2.echo "This is a test mail!& ...
- navicat远程连接mysql,2003 can't connect to mysql server on 10038
转载地址:https://blog.csdn.net/f12105212/article/details/70768516 1:我们连接远程服务器的mysql,如果出现问题,很大问题会出在服务器的端口 ...
- 用npm-run自动化任务(转)
自动构建JavaScript有不少好工具.不过其实很少有人知道,npm run命令就能很好地完成这一任务,配置起来也很简单. script npm会在项目的package.json文件中寻找scrip ...
- html基值 仿淘宝
$(function(){ var scale = 1 / devicePixelRatio; document.querySelector('meta[name="viewport&quo ...
- codeforces 814 C. An impassioned circulation of affection 【尺取法 or DP】
//yy:因为这题多组数据,DP预处理存储状态比每次尺取快多了,但是我更喜欢这个尺取的思想. 题目链接:codeforces 814 C. An impassioned circulation of ...