java oop遍历List和Map的几种方法
一、list的遍历
import java.util.*;
public class ListTest {
public static void main(String[] args) {
List<String> list = new ArrayList<String>();
list.add("Hello"); //用add方法为list添加内容
list.add("World");
list.add("!");
//第一种遍历list的方法
for (String str : list) {
System.out.println(str);
}
System.out.println();
//第二种遍历list的方法,先将链表变为数组
String[] strarr = new String[list.size()];
list.toArray(strarr);
for (int i = 0; i < strarr.length; i++) {
System.out.println(strarr[i]);
}
//第三种遍历list的方法,使用迭代器进行遍历
//该方法可以不用担心在遍历的过程中会超出集合的长度
System.out.println();
Iterator<String> ite = list.iterator();
while (ite.hasNext()) {
System.out.println(ite.next());
}
}
}
三、Map的遍历
import java.util.*;
/**
*遍历Map
*任何对象加入集合类后,自动转变为Object类型,所以在取出的时候,需要进行强制类型转换。
*/
public class MapTest {
public static void main(String[] args) {
//实例化一个map对象
Map<String,String> map = new HashMap<String, String>();
map.put("1", "value1"); //使用对象名。put为map的key和value赋值
map.put("2", "value2");
map.put("3", "value3"); //第一种遍历map的方式:普通遍历,二次取值
System.out.println("通过Map.KeySet遍历Key和Value");
for (String str : map.keySet()) {
System.out.println("k="+str + ",v="+map.get(str));
} System.out.println();
//第二种:通过Map.entrySet使用iterator遍历key和value:
System.out.println("通过Map.entrySet使用iterator遍历key和value:");
Iterator<Map.Entry<String, String>> it = map.entrySet().iterator();
while (it.hasNext()) {
System.out.println(it.next()); } //第三种:使用map.entrySet遍历map,尤其是在容量大时使用
for (Map.Entry<String, String> str : map.entrySet()) {
System.out.println(str.getKey() + "=" + str.getValue());
} System.out.println();
//第四种:通过map.values遍历map,但是只能显示value,不能显示key
for (String v : map.values()) {
System.out.println(v);
}
}
}
java oop遍历List和Map的几种方法的更多相关文章
- java 遍历List 和 Map的几种方法
java遍历List 1.(性能最差) for(String tmp:list) { //System.out.println(tmp); } 2.(性能最好) for(int i = 0; i &l ...
- java中遍历MAP,嵌套map的几种方法
java中遍历MAP的几种方法 Map<String,String> map=new HashMap<String,String>(); map.put("us ...
- java 遍历map的四种方法
16:21:42 Map.entrySet() 这个方法返回的是一个Set<Map.Entry<K,V>>,Map.Entry 是Map中的一个接口,他的用途是表示一个映射项( ...
- 转载:遍历Map的四种方法
http://www.cnblogs.com/kristain/articles/2033566.html 遍历Map的四种方法 public static void main(String[] ar ...
- Java构造和解析Json数据的两种方法详解二
在www.json.org上公布了很多JAVA下的json构造和解析工具,其中org.json和json-lib比较简单,两者使用上差不多但还是有些区别.下面接着介绍用org.json构造和解析Jso ...
- Java构造和解析Json数据的两种方法详解二——org.json
转自:http://www.cnblogs.com/lanxuezaipiao/archive/2013/05/24/3096437.html 在www.json.org上公布了很多JAVA下的jso ...
- Java构造和解析Json数据的两种方法详解一——json-lib
转自:http://www.cnblogs.com/lanxuezaipiao/archive/2013/05/23/3096001.html 在www.json.org上公布了很多JAVA下的jso ...
- java 解决Hash(散列)冲突的四种方法--开放定址法(线性探测,二次探测,伪随机探测)、链地址法、再哈希、建立公共溢出区
java 解决Hash(散列)冲突的四种方法--开放定址法(线性探测,二次探测,伪随机探测).链地址法.再哈希.建立公共溢出区 标签: hashmaphashmap冲突解决冲突的方法冲突 2016-0 ...
- java double类型保留两位小数4种方法【转】
4种方法,都是四舍五入,例: import java.math.BigDecimal; import java.text.DecimalFormat; import java.text.NumberF ...
随机推荐
- Address already in use: JVM_Bind 8083端口被占用的几个解决办法
运行Tomcat时若出现Address already in use: JVM_Bind 端口被占用,一般使用下面几个办法可以解决: 假设端口为8083 1.启动cmd, 执行命令netstat -a ...
- 剑指offer第二版面试题3:二维数组中的查找(JAVA版)
题目: 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数. 1 2 8 9 2 4 ...
- Codeforces 1189B Number Circle
题目链接:http://codeforces.com/problemset/problem/1189/B AC代码: #include<bits/stdc++.h> using names ...
- Git 学习第二天(一)
继续昨天的学习. 回顾一下,昨天我们安装了git 并创建了登录名及邮箱,还向git仓库提交了一个readme.txt的文本文件 下面,我们来修改下这个文件,将内容改为 Git is a distrib ...
- DFS问题举例:N个整数选k个使其和为x
N个整数选k个使其和为x,若有多个方案,选择元素平方和最大的一个 #include<cstdio> #include<cmath> #include<cstring> ...
- Vue之数据排序加签
这篇随笔小编给大家带来的是数据排序加签: 所谓数据加签,就是把数据进行加密再传给后端,这样保证数据的秘密性.不容易被修改和获取:排序就是根据公司要求对字段进行排序,有些公司会把字段根据a-z排序,有些 ...
- PushSharp 由于远程方已关闭传输流,身份验证失败。
前段时间用到了PushSharp给APNS发推送,但是用的时候遇见很诡异的事情,每次第一次运行的时候能成功发送到 但是接下来就无限的提示“由于远程方已关闭传输流,身份验证失败. “ 然后我就各种找原因 ...
- lombok @Builder实现原理
public class Person { private Person(Builder builder) { name = builder.name; age = builder.age; } pr ...
- Batch - %~dp0 vs %cd%
总结 %~dp0 只表示将要“运行的”bat命令的folder,不包含bat自己的名称. %cd%表示,“运行处”的folder . 示例脚本内容 cd-dp0.bat存放在f盘 @echo off ...
- 阿里巴巴AI夺肝结节诊断两项世界冠军,至今无人超越
在澳门用人工智能预测流感趋势后,阿里巴巴还在继续探索如何用科技保障人类健康,这一次是更准确地测量肝结节. 12月28日消息,在全球LiTS(Liver Tumor Segmentation Chall ...