黑马程序员技术交流社区

标题: 有些题目我总是不理解它的意思...... [打印本页]

作者: crossover    时间: 2016-9-5 10:17
标题: 有些题目我总是不理解它的意思......
比如,将map集合里的元素存入一个文本中。是要求以键值对对象存进去还是,get出来存进去
作者: Jimchan    时间: 2016-9-5 10:41
这个题目是以键值对的形式存进去的
作者: 370452158    时间: 2016-9-5 10:53
本帖最后由 370452158 于 2016-9-5 10:57 编辑

package com.heima.text;  import java.io.BufferedWriter; import java.io.FileWriter;
import java.io.IOException;
import java.util.Iterator;
import java.util.Set;
import java.util.TreeMap;
public class text10 {     
     /**          * 3.有一个Map集合里面存储的是学生的姓名和年龄,内容如下{赵四=21, 王二=17, 张三=18, 小丫=25, 李四=26, 王五=38}
         a.将里面的元素用两种遍历方式打印到控制台上            
     b.将年龄大于24的学员姓名存入到当前工程目录student.txt中        
  * @throws IOException            */      
  public static void main(String[] args) throws IOException {               
// TODO Auto-generated method stub                 
TreeMap<String, Integer> tm = new TreeMap<>();   
              tm.put("赵四", 21);               
             tm.put("王二", 17);               
             tm.put("张三", 18);               
             tm.put("小丫", 25);   
             tm.put("李四", 26);  
             tm.put("赵六", 38);                                 
      //方法一遍历       key是键,那tm.get(key)就是键对应的值               
                 for (String key : tm.keySet()) {                       
                System.out.println(key +""+tm.get(key));                 }                 
                                   //方法二遍历                     
                       Set<String> keySet = tm.keySet();                     
             Iterator<String> it = keySet.iterator();                     
             while (it.hasNext()) {                              
           String s = (String) it.next();                              
      //输出语句中  s就是键,tm.get(s)就是值                                 
            System.out.println(s+""+tm.get(s));                         }                  
      BufferedWriter bw = new BufferedWriter(new FileWriter("Student.txt"));                  
             for (String key : tm.keySet()) {                           
              //判断值大于24的                     
             if (tm.get(key)>24) {                                
  //要求写入的是名字  ,所以写入的是 键  也就是名字                              
           bw.write(key);                     
           }                              
  }                  
      bw.close();                          
   }
  }

作者: 370452158    时间: 2016-9-5 11:00
map集合存储的是键值对 ,他要把什么写入文本,你就写什么,要键你就只把 键 写进去 ,要键值对,你就把 键(key)和所对应的值(tm.get(key))也写进去就好
作者: 梦想的小草    时间: 2016-9-5 11:04
看情况,如果键也是一个有意义的值,并不是一个序号的话,就以键值对的形式存,键没有意义的话就只存值.我是这么理解的
作者: changfa    时间: 2016-9-5 11:26
键值对吧,只有获取到了键值对才能以值对象方式存进去
作者: 小菜白白白    时间: 2016-9-5 12:09
今天刚学map,map的元素存入文本是什么意思?
作者: LShu    时间: 2016-9-5 14:26
map集合中的元素是以键值对的形式存在的,应该是以   "键 = 值" 这种形式存进文档中的
作者: a825125501    时间: 2016-9-5 15:59
键值对. map是根据键值对存储!!




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