集合框架(二) 迭代器Iterator
来源:互联网 发布:访客网络永远保存密码 编辑:程序博客网 时间:2024/06/18 13:59
用来遍历List集合的迭代器Iterator:
简单介绍迭代器的使用:
import java.util.ArrayList;import java.util.Iterator;import java.util.List;public class Ch04 {public static void main(String[] args) {// TODO Auto-generated method stub//集合List list = new ArrayList<>();list.add(1);list.add(2);list.add(3);//遍历、循环、迭代其实本质差不多for(int i = 0 ;i < list.size();i++){//int包装类int n = (Integer) list.get(i);System.out.println(n);}//Iterator迭代器//1.获取迭代器Iterator iter = list.iterator();//通过循环迭代//hasNext方法是判断是否存在下一个元素while(iter.hasNext()){//next迭代//Object强转int//Object --> Integer --> intint j = (int) iter.next();System.out.println(j);}}}迭代器使用实例:
1.定义学生类(Student)保存学生信息,学生信息包括学号(id)、姓名(name)、年龄(age),使用ArrayList来保存学生信息,并迭代输出。
2.以上已经使用ArrayList存储了学员的信息,现在实行修改学员信息,根据输入的学号来进行修改(存入的学号是唯一的),修改后将最新的学员信息输出;如果没有该学员则提示信息。
3.在以上基础上实现删除学员信息,根据输入的学号来进行删除(存入的学号是唯一的),删除后将最新的学员信息输出,如果没有该学员,则提示信息。
Student类
public class Student {private int id;private String name;private int age;public Student(int id, String name, int age) {super();this.id = id;this.name = name;this.age = age;}public int getId() {return id;}public void setId(int id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}}
StudentManager类
import java.util.ArrayList;import java.util.Iterator;import java.util.List;import java.util.Scanner;public class StudentManager {private List list=new ArrayList<>();private Scanner in=new Scanner(System.in);/** * 初始化学生信息 */public void initData() {int id=0;System.out.println("********录入学生信息,当录入的编号为0时,结束录入*********");while(true) {System.out.print("请输入学生编号");id=in.nextInt();if(id==0) {break;}System.out.print("请输入学生姓名");String name=in.next();System.out.print("请输入年龄");int age=in.nextInt();Student stu=new Student(id, name, age);list.add(stu);}System.out.println("结束录入!");}/** * 迭代数据 */public void iterData() {System.out.println("学员的信息如下:");System.out.println("学号\t姓名\t年龄");Iterator iter=list.iterator();while(iter.hasNext()) {Student stu=(Student) iter.next();System.out.println(stu.getId()+"\t"+stu.getName()+"\t"+stu.getAge());}}public void updateData() {//判断学生学号是否存在System.out.print("请输入要修改的学生学号:");int id=in.nextInt();//Iterator iter=list.iterator();while (iter.hasNext()) {Student stu = (Student) iter.next();//判断是否存在该学生//学生的编号和输入的编号是否相等if(stu.getId()==id) {//修改信息System.out.print("请输入要修改的学员姓名");stu.setName(in.next());System.out.print("请输入要修改的学员年龄");stu.setAge(in.nextInt());System.out.println("修改成功");//重新显示学员信息iterData();return;}}System.out.println("对不起,没有该学员");}public void deleteData() {//判断学生学号是否存在System.out.print("请输入要删除的学生学号:");int id=in.nextInt();//Iterator iter=list.iterator();while (iter.hasNext()) {Student stu = (Student) iter.next();//判断是否存在该学生//学生的编号和输入的编号是否相等if(stu.getId()==id) {//删除信息list.remove(stu);System.out.println("删除成功");//重新显示学员信息iterData();return;}}System.out.println("对不起,没有该学员");}}
Test类
public class StuTest {public static void main(String[] args) {StudentManager manager=new StudentManager();manager.initData();//初始化学生信息manager.iterData();//显示学生信息manager.updateData();//更新学生信息manager.deleteData();//删除学生信息}}
阅读全文
0 0
- 集合框架(二) 迭代器Iterator
- 集合框架三迭代器(Iterator)
- 集合框架——迭代器Iterator
- 集合框架方法和迭代器Iterator
- 集合框架-Iterator
- 集合浅析二:Iterator迭代器介绍
- 黑马程序员------集合框架(No.1)(概述、迭代器、List集合、Iterator)
- java集合(1):集合框架体系之Collection接口及迭代器Iterator接口
- Java类集框架——Iterator和ListIterator 迭代器的使用(遍历集合)
- 黑马程序员--07.集合框架--02.【迭代器Iterator】
- 使用Java实现面向对象编程--集合框架-->迭代器Iterator
- Java——集合框架之ArrayList,LinkedList,迭代器Iterator
- java集合框架和Iterator迭代器相关方法
- 黑马程序员-- 集合框架 (Collection, Iterator,泛型)
- Java集合类的学习(二)——Collection接口和Iterator迭代器
- java-集合类(二)-迭代器-Iterator-Collections类自然排序
- 集合框架(二)--Map集合
- 集合框架总结(二)
- 51nod 1192 Gcd表中的质数 莫比乌斯反演
- web工程中的web.xml文件有什么作用呢?
- myBatisPagehelper入门
- HTML知识杂记
- python3.5安装lxml没有etree
- 集合框架(二) 迭代器Iterator
- [bzoj4300] 绝世好题 动态规划
- 训练日记8.16
- HTML5 Canvas笔记 -- 3
- Python(析构函数)
- TCP协议以及三次握手
- 搞定网页兼容性
- 电路调试小技巧总结
- STM8S103之AD采样