2021年1月29~30日 Java集合、迭代器、泛型
迭代器:
- 迭代的过程中不能增删元素,否则会产生并发修改异常。
- 注意 迭代 和 迭代器 的区别,迭代器 是用来 迭代 集合 的工具。
- 练习:某公司有多个人,每个人有不同数量的钱,用迭代器求出公司里所有男人钱的总数:
- (注意:next方法做两件事:返回当前指向的元素,并指向下一个元素)
class Employee{ String name; boolean isMale; double money; Employee(String name,boolean isMale,double money){ this.name = name; this.isMale = isMale; this.money = money; } } public class Main { public static void main(String[] args){ Collection<Employee> company = new ArrayList<Employee>(); company.add(new Employee("Tom",true,500)); company.add(new Employee("Bruce",true,40)); company.add(new Employee("Alice",false,123)); company.add(new Employee("Katy",false,250)); company.add(new Employee("Eric",true,123)); Iterator<Employee> it = company.iterator(); double sum = 0; while(it.hasNext()) { Employee temp = it.next();//指针已移动,所以只能定义变量再次取值 if(temp.isMale) { sum+=temp.money; } } System.out.println(sum); } }