java 集合遍历输出方式
Iterator:迭代输出
一旦操作集合的遍历输出,首选Iterator接口;
ListIterator:Iterator子接口,专门输出List中的元素;
Enumeration:古老的输出方式,迭代Vector元素,被Iterator取代;
foreach:可输出数组和Iterable对象;
我的总结:
集合遍历输出方式:
- 1. Iterable接口(迭代遍历) 注:优先选择Iterator接口,遍历Collection里所有元素,也称为迭代器和迭代精灵;迭代是取出集合中元素的一种推荐方式。
- 2. Foreach循环 注:可以直接用,使用场合:数组和Iterable对象!
- 3. For循环 注:在()内实例化Iterable对象,进行遍历!
- 4. 先用toArray方法输出成为数组,再用Foreach循环!
第一个和第三个很类似,第二个和第四个很类似!
很好
Eg:
package july7;
//遍历输出的四种方式
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class Demo11 {
public static void main(String[] args) {
List<String> l = new ArrayList();
l.add("1");
l.add("2");
l.add("3");
l.add("4");
System.out.println(l);
/**
* 遍历输出:四种方式
*/
// 1、推荐使用的Iterator对象,迭代输出!
Iterator it = l.iterator();
while (it.hasNext()) {
System.out.println("迭代输出:" + it.next());
}
// 2、对集合进行fore循环!
for (String str : l) {
System.out.println("fore集合迭代输出:" + str);
}
// 3、for循环迭代,在for方法体内部实例化Iterator对象!
int i = 0;// for方法体内定义项不能出现多种不同类型
for (Iterator iter = l.iterator(); i < l.size(); i++) {
System.out.println("for循环迭代实例化输出:" + iter.next());
}
// 4、先将集合转换为数组,再利用数组的遍历输出;
Object[] o = l.toArray();
for (Object object : o) {
System.out.println("转换数组迭代输出:" + object);
}
}
}
java 集合遍历输出方式的更多相关文章
- Java集合——遍历集合元素并修改
Java集合——遍历集合元素并修改 摘要:本文主要总结了遍历集合的方式,以及在遍历时修改集合要注意的问题. 遍历Collection 对List和Set的遍历,有四种方式,下面以ArrayList为例 ...
- 浅谈集合框架四——集合扩展:集合循环输出方式及list输出方式的效率对比
最近刚学完集合框架,想把自己的一些学习笔记与想法整理一下,所以本篇博客或许会有一些内容写的不严谨或者不正确,还请大神指出.初学者对于本篇博客只建议作为参考,欢迎留言共同学习. 之前有介绍集合框架的体系 ...
- java集合-遍历arraylist-for循环-从指定下标开始遍历-for的用法
转载:http://www.9191boke.com/blogdetails/681220549.html java集合的for循环遍历有多种方式,但是都是从下标0开始遍历,有时会有从中间下标开始遍历 ...
- java集合遍历删除指定元素异常分析总结
在使用集合的过程中,我们经常会有遍历集合元素,删除指定的元素的需求,而对于这种需求我们往往使用会犯些小错误,导致程序抛异常或者与预期结果不对,本人很早之前就遇到过这个坑,当时没注意总结,结果前段时间又 ...
- java集合遍历的几种方式总结及比较
集合类的通用遍历方式, 用迭代器迭代: Iterator it = list.iterator(); while(it.hasNext()) { Object obj = it.next(); } ...
- Java 集合的迭代方式
集合的迭代流使得程序员得以站在更高的抽象层次上对集合进行操作.传统的迭代方法直接看代码: List<Dog> dogs = new ArrayList<>(); ...
- Arraylist集合遍历输出
题目:创建一个只能容纳String对象名为names的Arraylist集合,按顺序向集合中添加5个字符串对象.对集合进行遍历,打印出集合中每个元素的位置与内容.首先打印出集合的大小,然后删除集合中的 ...
- Java中遍历HashMap方式
本教程将为你展示Java中HashMap的几种典型遍历方式. 如果你使用Java8,由于该版本JDK支持lambda表达式,可以采用第5种方式来遍历. 如果你想使用泛型,可以参考方法3.如果你使用旧版 ...
- Java数组遍历输出
在Java中,如何将字符串数组写入输出控制台? 以下示例演示了通过循环将数组的元素写入输出控制台. package com.yiibai; public class ArrayOutput { pub ...
随机推荐
- jeecg Access restriction 问题解决
最近导入新项目,导入所有用到的jar包,发现其中一个引用报错 import com.sun.istack.internal.Nullable; 具体信息如下: Access restriction: ...
- 学习笔记(2)---Matlab 图像处理相关函数命令大全
Matlab 图像处理相关函数命令大全 一.通用函数: colorbar 显示彩色条 语法:colorbar \ colorbar('vert') \ colorbar('horiz') \ col ...
- reactjs scrollTop
问题1: 单页应用开发时,当在A页面滚动滚动条后,点击进入B页面,滚动条保持在A页面的滚动位置. 目标: 同级路由切换时,滚动条回滚到页面顶端. 解决方案: //在componentDidMount周 ...
- Centos6.x终端中文乱码
locale LANG LC_*的默认值,是最低级别的设置,如果LC_*没有设置,则使用该值.类似于 LC_ALL. LC_ALL 它是一个宏,如果该值设置了,则该值会覆盖所有LC_*的设置值.注意 ...
- database homework1
mysql> select * from teacher_info; +----+------+-----+--------+---------+ | id | name | age | sal ...
- Directx11教程39 纹理映射(9)
原文:Directx11教程39 纹理映射(9) 在myTutorialD3D11_32中,我们在PlaneModelClass中增加一个纹理TextureClass* m_Texture;读 ...
- 2019-9-2-dotnet-命名管道名字长度限制
title author date CreateTime categories dotnet 命名管道名字长度限制 lindexi 2019-09-02 11:54:50 +0800 2019-09- ...
- vue2-vux-fitness-project
非常感谢那些无私开源的程序员,希望我也能够有能力像你们那样,开源很多很有意思的东西~~ //index.html <!DOCTYPE html> <html> <head ...
- 阿里巴巴资深技术专家无相:我们能从 InteliJ IDEA 中学到什么?
本文来源于阿里巴巴资深技术专家无相在内网的分享,阿里巴巴中间件受权发布. 最近因为工作的关系,要将 Eclipse 的插件升级为 IDEA 插件.升级过程中,对 IDEA 插件做了些学习和研究,希望通 ...
- 观察者模式(Java实现)
import java.util.ArrayList; import java.util.Iterator; /* 抽象观察者类 */ abstract class Observer { public ...