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

© 黑马刘岩 中级黑马   /  2012-12-5 17:49  /  2255 人查看  /  8 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

Properties prop=System.getProperties();
for(Object obj:prop.keyset()){
    String value=(String)prop.get(obj);
    System.out.println(obj+"::"+value);
}
有几个问题:
1。这里的for语句是循环语句吗?但是格式上不是用作循环的,应该是遍历用的吧?类似于foreach吧?
2.for后面括号里是什么意思?keyset()方法又是什么意思?
3.obj和value分别代表着什么?

8 个回复

倒序浏览
这是增强for循环,毕老师的视频和java加强中都有讲解,你可以看一下
回复 使用道具 举报
坚持远方 发表于 2012-12-5 17:56
这是增强for循环,毕老师的视频和java加强中都有讲解,你可以看一下

thank you!
回复 使用道具 举报
李百韬 发表于 2012-12-5 18:19
相当于foreach     只是格式不一样

两者有什么区别?什么时候用呢?
回复 使用道具 举报
Answer:
1.这里就是for each循环语句,是JavaSE 5.0之后增加的一种功能性很强的循环结果,可以用来依次处理数组中的每个元素而不必为指定下标值而分心。主要用来处理数组元素的遍历
2.for后面括号的意思是遍历prop,keyset()得到包含key值的集合,prop中存储的是 TreeMap<K,V>格式的数据;
3.obj就是prop代表的TreeMap的key,value就是那个key代表的具体数值。
具体请参照Java核心技术艺术中队集合类的详细讲解。
回复 使用道具 举报
李百韬 发表于 2012-12-5 18:30
java中foreach 就是for
foreach语句是java5的新特征之一,在遍历数组、集合方面,foreach为开发人员提供 ...

非常感谢!
回复 使用道具 举报
魏秀盛 发表于 2012-12-5 18:26
Answer:
1.这里就是for each循环语句,是JavaSE 5.0之后增加的一种功能性很强的循环结果,可以用来依次处 ...

灰常感谢!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马