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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 侯丛政 中级黑马   /  2013-2-5 21:13  /  1211 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 侯丛政 于 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);
                }

2 个回复

倒序浏览
  String val = prop.getProperty(key);      // 为什么这步不用强制转型?
这个数组本来就是用来存字符串的
回复 使用道具 举报
请查看API文档中java.until.properties,从其方法
public Object setProperty(String key,
                          String value)
可以看出key,value都是String类型的,当然就不用强转了
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马