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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

题目:有一个Map集合里面存储的是学生的姓名和年龄,内容如下{张三丰=21, 灭绝师太=38, 柳岩=28, 刘德华=40, 老鬼=36,
*  王二麻子=38}
a.将里面的元素用两种遍历方式打印到控制台上
b.将老鬼的年龄改成66
c.将年龄大于24的学生姓名,存入到D:\\student.txt中



代码实现:
public class Test1_StarInMap {
        /**
         * @param args
         * @throws IOException
         */
        public static void main(String[] args) throws IOException {
                HashMap<String, Integer> hm = new HashMap<>();
                hm.put("张三丰", 21);
                hm.put("灭绝师太", 38);
                hm.put("柳岩", 28);
                hm.put("刘德华", 40);
                hm.put("老鬼", 36);
                hm.put("王二麻子", 38);
                for (String s : hm.keySet()) {
                        System.out.println(s + "=" + hm.get(s));
                }
                System.out.println("---------");
                hm.put("老鬼", 66);
                for (Entry<String, Integer> st : hm.entrySet()) {
                        System.out.println(st.getKey() + "=" + st.getValue());
                }
                FileOutputStream fos = new FileOutputStream("D:\\student.txt");
                for (String s : hm.keySet()) {                //遍历将大于24岁的学生名字写到文件中
                        if (hm.get(s) > 24) {
                                byte[] arr = s.getBytes();
                                fos.write(arr);
                                fos.write("\\n".getBytes());
                        }
                }
                System.out.println("oookkk");
                fos.close();
        }

}

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马