gpt4 book ai didi

Java File.list() 顺序一致?

转载 作者:搜寻专家 更新时间:2023-10-31 08:21:01 26 4
gpt4 key购买 nike

这是一个可怕的问题(在我看来),我已经尽力找到有用的文档,但运气不佳 - 无论如何,这里是:

我有代码需要对目录中的所有文件进行一些操作。我在 File 中设置目录对象并使用 fileObject.list() 遍历目录中的文件。我让这段代码运行了一整夜,它(经过多次处理)在某个时候崩溃了。我试图弄清楚这是什么时候发生的(是的,我的日志记录很糟糕)。现在,根据this javadoc列出文件时不能保证顺序(按字母顺序或其他顺序),我想知道是否有任何一致性保证?这意味着当我两次运行相同的代码时,我会得到完全相同的文件顺序吗?逻辑告诉我应该这样做,我已经基于此恢复了操作,但我对此表示怀疑。另外,我很好奇 javadoc 中的“无特定顺序”是什么意思。

最佳答案

该语言意味着您不应依赖订单的任何属性,包括每次运行的一致性。

如果某些内存数据结构中存在文件链接列表,驱动程序可能会将最近访问的文件移到列表的前面,以优化重复文件访问。这可能会更改列出文件的顺序,即使没有文件被修改也是如此。

如果你想要一致的顺序,你可以这样做

Arrays.sort(
myFileArray,
new Comparator<File>() {
public int compare(File a, File b) {
return a.getName().compareTo(b.getName());
}
});

关于Java File.list() 顺序一致?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6539583/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com