黑马程序员技术交流社区

标题: Properties类的枚举器使用问题 [打印本页]

作者: 侯丛政    时间: 2013-2-5 21:13
标题: Properties类的枚举器使用问题
本帖最后由 侯丛政 于 2013-2-6 12:33 编辑

               
我把疑问说仔细些:
          既然Properties中的key和value都是String, 那我的理解就是要强转就都强转,要不就都不转,可是key必须要通过Object obj = e.nextElement() 和  String key = (String)obj这两步获         得,而不能通过String key = e.nextElements();这么直接得出.   都是String怎么会有不同呢?

               // 使用Properties类的枚举器遍历

                Properties prop = new Properties();
                Enumeration<?> e = prop.propertyNames();
                while(e.hasMoreElements()) {
                        Object obj = e.nextElement();
                        String key = (String)obj;     // 这步需要强转
                        String val = prop.getProperty(key);      // 为什么这步不用强制转型?
                        System.out.println(key + "=" + val);
                }


作者: 张庚    时间: 2013-2-5 21:43
  String val = prop.getProperty(key);      // 为什么这步不用强制转型?
这个数组本来就是用来存字符串的
作者: 曹睿翔    时间: 2013-2-6 00:28
请查看API文档中java.until.properties,从其方法
public Object setProperty(String key,
                          String value)
可以看出key,value都是String类型的,当然就不用强转了




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