File.listFiles()返回数组的顺序问题

File.listFiles()返回数组的顺序问题

http://www.iteye.com/problems/83721

如题,用该方法获取文件夹中的文件列表,返回的数组默认是什么顺序呢?操作系统的哪些属性会影响这个顺序

问题补充:
chen_yongkai 写道
引用
不保证所得数组中的相同字符串将以特定顺序出现,特别是不保证它们按字母顺序出现。 



jdk文档中有说明的 ,一般如果要排序的话,可以自己写个比较器排序,可以按文件大小、文件名、修改日期等等排序。 
有了比较器后,可以调用Arrays类的: 
public static <T> void sort(T[] a, 
                            Comparator<? super T> c)

我想知道的是同一款操作系统什么样的设置会对这个结果产生影响,比如说suse11,我遇到的问题是同样的代码在两台suse11的服务器上有不同的结果,我很想知道是什么影响了这个结果
2012年5月24日 18:13
 
 
 

3个答案按时间排序按投票排序

00

 

引用
我想知道的是同一款操作系统什么样的设置会对这个结果产生影响,比如说suse11,我遇到的问题是同样的代码在两台suse11的服务器上有不同的结果,我很想知道是什么影响了这个结果

我建议你自己排序,这样就不会受底层操作系统的影响了

 

2012年5月25日 15:59
 
00

 

引用
不保证所得数组中的相同字符串将以特定顺序出现,特别是不保证它们按字母顺序出现。 



jdk文档中有说明的 ,一般如果要排序的话,可以自己写个比较器排序,可以按文件大小、文件名、修改日期等等排序。 
有了比较器后,可以调用Arrays类的: 
public static <T> void sort(T[] a, 
                            Comparator<? super T> c)

 

2012年5月25日 08:37
 
00

不同操作系统是不一样的。调用的是底层的native方法

2012年5月24日 22:13
posted @ 2018-02-13 17:02  sky20080101  阅读(871)  评论(0)    收藏  举报