黑马程序员技术交流社区

标题: 作业题求解! [打印本页]

作者: Aaron9527    时间: 2016-6-1 22:38
标题: 作业题求解!
/*需求:
* 编写程序,创建一个双列集合,存放一下数据(3代表苹果,4代表香蕉等),
* 并用迭代器获取数据,打印输出
* */
作者: 18611643318    时间: 2016-6-1 23:42
  1. package cn.itcast.test;

  2. import java.util.HashMap;
  3. import java.util.Iterator;
  4. import java.util.Map;
  5. import java.util.Set;

  6. /**
  7. *
  8. *
  9. *  需求: 编写程序,创建一个双列集合,存放一下数据(3代表苹果,4代表香蕉等), 并用迭代器获取数据,打印输出
  10. *
  11. *
  12. *
  13. * @author Venus
  14. *
  15. */
  16. public class Test6 {
  17.         public static void main(String[] args) {
  18.                 //新建hashmap集合
  19.                 Map<Integer, String> map = new HashMap<Integer, String>();
  20.                 //添加若干数据
  21.                 map.put(3, "苹果");
  22.                 map.put(4, "香蕉");
  23.                 map.put(5, "草莓");
  24.                 //用ketset方法取得key,并放到set集合
  25.                 Set<Integer> set = map.keySet();
  26.                 //迭代器遍历set集合
  27.                 Iterator<Integer> it = set.iterator();
  28.                 while(it.hasNext()){
  29.                         int i = it.next();
  30.                         //遍历set里面的每个值,并取得map里面的value
  31.                         String s = map.get(i);
  32.                         //打印key和value
  33.                         System.out.println(i+"\t"+s);
  34.                 }
  35.         }
  36. }
复制代码
还有一种方法,你看下基础班集合框架的最后一个day中的内容.

作者: yesnowoshiqiang    时间: 2016-6-1 23:57
package kaoshi;

import java.util.HashMap;
import java.util.Iterator;
import java.util.Map.Entry;
import java.util.Set;

public class MAP1 {
        /*
         * /*需求: 编写程序,创建一个双列集合, 存放一下数据(3代表苹果,4代表香蕉等), 并用迭代器获取数据,打印输出
         */

        public static void main(String[] args) {
                // 首先双列集合常用的就是map中的hashmap、存是用put方法
                HashMap<Integer, String> hashMap = new HashMap<Integer, String>();
                hashMap.put(3, "苹果");
                hashMap.put(4, "香蕉");

                // 双列集合是没有办法直接迭代的,,只有变成单列的集合才能,迭代,
                // 所以一个是keyset,得到key的一个集合,然后通过key,获取键的值
                // 还有一个entryset,是得到一个键值的映射集合,通过迭代集合,可以同时得到key和value

                Set<Entry<Integer, String>> entrySet = hashMap.entrySet();

                Iterator<Entry<Integer, String>> iterator = entrySet.iterator();
                while (iterator.hasNext()) {
                        Entry<Integer, String> next = iterator.next();
                        System.out.println(next.getKey() + "--" + next.getValue());

                }

        }

}

作者: Aaron9527    时间: 2016-6-2 00:40
18611643318 发表于 2016-6-1 23:42
还有一种方法,你看下基础班集合框架的最后一个day中的内容.

谢谢~!~我一开始没有想到Set后面再用迭代器,我就是在想Map集合中没有迭代器,然后就,,谢谢了
作者: 18611643318    时间: 2016-6-2 22:39
Aaron9527 发表于 2016-6-2 00:40
谢谢~!~我一开始没有想到Set后面再用迭代器,我就是在想Map集合中没有迭代器,然后就,,谢谢了 ...

不用客气.共同进步.




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2