黑马程序员技术交流社区
标题:
File对象功能
[打印本页]
作者:
程序爱好者
时间:
2014-4-27 10:34
标题:
File对象功能
本帖最后由 程序爱好者 于 2014-4-28 08:55 编辑
public static void list2()
{
File f=new File("E:\\");
String[] s=f.list(new FilenameFilter()
{
public boolean accept(File f,String name)
{
return name.endsWith(".html");
}
});
for (String name:s) {
System.out.println(s);
}
}
复制代码
打印结果是:[Ljava.lang.String;@544a5ab2
为什么不是 具体的文件名,而是乱码....
作者:
SyouRai_Tsk
时间:
2014-4-27 11:01
for (String name:s) {
System.out.println(s);
}
你输出的是s. 改为name
作者:
@文瑞
时间:
2014-4-27 11:03
增强for循环中是将数组s中的值,逐个赋值给name然后打印
所以sysout输出的应该是name,你试试看:
01.public static void list2()
02. {
03. File f=new File("E:\\");
04. String[] s=f.list(new FilenameFilter()
05. {
06.
07. public boolean accept(File f,String name)
08. {
09. return name.endsWith(".html");
10. }
11. });
12. for (String name:s) {
13. System.out.println(name);
14. }
15. }
复制代码
作者:
松毛
时间:
2014-4-27 11:05
这个不是乱码,而是你打印的String[]这个对象,正如楼上所说,需要打印的是name,而不是s这个对象。
作者:
程序爱好者
时间:
2014-4-28 08:55
SyouRai_Tsk 发表于 2014-4-27 11:01
for (String name:s) {
System.out.println(s);
}
谢谢了!!!!!!!:)
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2