A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 无气打火机 中级黑马   /  2013-7-21 02:19  /  1061 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 无气打火机 于 2013-7-21 18:17 编辑
  1. import java.util.HashSet;
  2. import java.util.Iterator;


  3. public class HashSetDemo {
  4.         public static void main(String[] args) {
  5.                 HashSet hs = new HashSet();
  6.                 hs.add("就业班");
  7.                 hs.add("基础班");
  8.                 hs.add("冲刺班");
  9.                 hs.add("加强班");
  10.                 hs.add("远程班");
  11.                 Iterator it = hs.iterator();
  12.                 while(it.hasNext()) {
  13.                         String str = (String)it.next();
  14.                         System.out.println(str);
  15.                         if(str.equals("就业班")) {//这里为什么要这样做?他们的代码是说删除上一次next返回的元素。为什么要删除上一次返回的元素?
  16.                                 
  17.                                 it.remove();
  18.                         }
  19.                 }
  20.                
  21.         }
  22.         
  23.         
  24. }
复制代码
问题都在代码注释里,请各位大虾帮忙解答下小弟的问题

评分

参与人数 1技术分 +1 收起 理由
杨兴庭 + 1

查看全部评分

3 个回复

倒序浏览
就是举了个例子可以删除集合中的元素,你想删哪个都行,只是判断出是你想删的。也不是什么上一个,就理解成删除你本次循环得到的那个就行
回复 使用道具 举报
这是一个需求问题吧,老师讲就是功能举例,如何删除集合中的元素,比如说,你现在有一个职工表,有一天某一职工辞职了,你需要删除他的信息,你就可以使用这种方式去删除了,即,找到该职工,删除他的信息。不是删除下一个,是删除满足你想要删元素的条件即可。
回复 使用道具 举报
  1. Iterator it = hs.iterator();                  //创建迭代器

  2. while(it.hasNext()) {                      //判断迭代器中是否存在值

  3. String str = (String)it.next();      //遍历迭代器中值,转为String类型        it.next()的意思就是遍历堆栈中(迭代器中)值
  4.   
  5. System.out.println(str);         //打印迭代器中的值

  6. if(str.equals("就业班")) {          //如果遍历到的值是“就业班”就删掉


  7. it.remove();

  8. }

  9. }

复制代码
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马