List循环与Map循环的总结
做了一下list和map的总结,没有什么技术含量,就全当复习了一下api。
测试环境是在junit4下,如果没有自己写一个main方法也是一样的。
首先是List的三种循环:
@Test
public void ForListTest() {
List<String> list = new ArrayList<String>();
list.add("1");
list.add("2");
list.add("3");
list.add("4");
list.add("5"); // 迭代器循环不需要知道集合的大小以及类型,最佳选择
for (@SuppressWarnings("rawtypes")
Iterator iterator = list.iterator(); iterator.hasNext();) {
String list = (String) iterator.next();
System.out.println("01)Iterator for:===============" + list);
} // foreach相对比for来讲,不需要知道集合的长度
for (String list : list) {
System.out.println("02)foreach:=================" + list);
} // for循环既需要知道集合的大小,而且要求是有序的
for (int i = 0; i < list.size(); i++) {
System.out.println("03)for==================" + list.get(i));
}
}
然后是Map的四种循环:
@Test
public void ForMapTest() {
Map<String, String> map = new HashMap<String, String>();
map.put("01", "1");
map.put("02", "2");
map.put("03", "3");
map.put("04", "4");
map.put("05", "5");
Set<String> keySet = map.keySet();
//1.keyset的foreach方法
for (String key : keySet) {
System.out.println("1)keyset:" + "key:" + key + " value:"
+ map.get(key));
} Set<Entry<String, String>> entrySet = map.entrySet();
//2.entryset的迭代方法
for (@SuppressWarnings("rawtypes")
Iterator iterator = entrySet.iterator(); iterator.hasNext();) {
@SuppressWarnings("unchecked")
Entry<String, String> entry = (Entry<String, String>) iterator
.next();
System.out.println("02)entrySet,iterator: key:" + entry.getKey()
+ " value:" + entry.getValue());
} //3.推荐,容量最大
for (Entry<String, String> entry : entrySet) {
System.out.println("03)entrySet,foreach:key:" + entry.getKey()
+ " value:" + entry.getValue());
} Collection<String> values = map.values();
//4.只循环出value的方法
for (String value : values) {
System.out.println("04)values,just for values,value:" + value);
} }
List循环与Map循环的总结的更多相关文章
- Python语法基础03(if语句,while循环与for循环)
if语句:语法:单分支if 判断条件:语句块 执行过程:首先执行判断条件,当条件成立则执行判断条件下面的语句块,若条件不成立,则不执行 双分支if 判断条件:语句块1else:语句块2执行过程: 首先 ...
- C#语句2——循环语句(for循环与for循环嵌套)
循环:反复执行某段代码. 循环四要素:初始条件,循环条件,循环体,状态改变. for(初始条件;循环条件;状态改变) { 循环体 } break ——中断循环,跳出整个循环 continue——停止本 ...
- for循环与for循环嵌套
今天温习了下分支语句跟for循环,主要讲解了for循环嵌套,这里开始有点迷糊了,整理下思路在做练习 for循环嵌套用我自己的大白话来说就是一个外圈的for程序里面一个套着一个小的for程序,如果在范围 ...
- 房上的猫:while循环与do-while循环,debug的调试运用
一.循环结构 1.循环不是无休止进行的,满足一定条件的时候循环才会继续,称为"循环条件",循环条件不满足的时候,循环退出 2.循环结构是反复进行相同的或类似的一系列操作,称为&qu ...
- 浅谈C#中的for循环与foreach循环
for循环和foreach循环其实可以算得上是从属关系的,即foreach循环是可以转化成for循环,但是for循环不一定能转换成foreach循环. 下面简单介绍一下两种循环: 1.for循环 代码 ...
- python while循环与for循环
今天刚看了一下python的while和for循环,所以打算记录一下: while语句是python中的循环条件语句,while 判断条件 : pass break 例如: i = 1 sum = 1 ...
- python-for循环与while循环
while 循环 格式: while 条件 为 True: 代码块 while True: rayn_age = 18 age = input('请输入你的年龄:') age = int(age) i ...
- 3.2.1 for循环与while循环的基本语法
不停地重复一件事情,时间久了会非常无聊,然后大脑就会由于疲劳而容易入睡. 重复性的劳动会使人疲劳,而计算机不会,只要代码写得正确,计算机就会孜孜不倦地重复工作.在Python中主要有两种形式的循环结构 ...
- Java—增强for循环与for循环的区别/泛型通配符/LinkedList集合
增强for循环 增强for循环是JDK1.5以后出来的一个高级for循环,专门用来遍历数组和集合的. 它的内部原理其实是个Iterator迭代器,所以在遍历的过程中,不能对集合中的元素进行增删操作. ...
随机推荐
- javaweb之session过期验证
session过期判断的基本思想:用户登录成功后,将用户账号信息保存在session中,然后几乎每次执行命令都要经过过滤器,过滤器检查session中是否存在账号,若不存在, 则返回登录页面,反之正常 ...
- PhotoSwipe简介
官方网站http://www.photoswipe.com/源码示例http://github.com/downloads/codecomputerlove/PhotoSwipe/code.photo ...
- Webgis中关于Openlayers入门使用(一)安装及生成基本地图
一.WebGis项目中使用的版本2.12 下载地址:https://github.com/openlayers/ol2/releases https://github.com/openlayers/o ...
- 【Python之路】第三篇--Python基本数据类型
运算符 1.算数运算: # 在py2的 取整除运算中 9//2 = 4.0 # 引入 from __future__ import division 9//2 = 4.5 # py3中不需要! 2.比 ...
- javaWEB总结(12):JSP页面的九个隐含对象
前言 jsp本质上是一个servlet,而在jsp中有九个不用声明就可以使用的对象,我们叫他隐含对象.本文基于上文所写,如有需要可查看上一篇文章javaWEB总结(11):JSP简介及原理. 打开上次 ...
- 利用ckeditor 富文本编辑插件静态化网页
// step5: 生成静态化html FileOutputStream fos = null; PrintStream printStream = null; ...
- Windows系统新建gitignore文件出现“必须键入文件名”错误的解决办法
今天打算把本地的项目用git推送到github上去,但是有的信息我又不想把它加入到版本控制系统中去,例如.classpath文件和.class文件等等,这个时候我就想到了使用.gitignore文件把 ...
- HUST 1404 Hamming Distance(字符串)
Hamming Distance Description Have you ever heard of the Hamming distance. It is the number of positi ...
- 使用紧凑的序列化器,数倍提升性能 —— ESFramework 4.0 快速上手(11)
在分布式通信系统中,网络传递的是二进制流,而内存中是我们基于对象模型构建的各种各样的对象,当我们需要将一个对象通过网络传递给另一个节点时,首先需要将其序列化为字节流,然后通过网络发送给目标节点,目标节 ...
- Gentoo网络配置
网卡识别配置 要开始配置你的网卡,你首先需要告诉Gentoo RC系统你的网卡. 可以用ifconfig命令查看自己网卡名字: ifconfig -a 网卡名字(如eth0)的识别是通过在/etc/i ...