Java lastmodified 的 1.8 编译错误
Java 1.8 compilation error for lastmodified
File lastModified = Arrays.stream(files)
.filter(File::isDirectory)
.max(Comparator.comparing(File::lastModified))
.orElse(null)
上面的代码可以更改为与 1.7 兼容吗?
否,Stream API 仅在 Java 8
可用
upd: 您可以使用 for 循环查找具有最新更改的文件。检查 this post
提供files instanceof File[]
,应该是这样的:
private static File getFileLastModified(File[] files) {
File fileLastModified = null;
long maxLastModified = Long.MIN_VALUE;
for (File file : files) {
if (file.isDirectory()) {
final long lastModified = file.lastModified();
if (lastModified > maxLastModified) {
fileLastModified = file;
maxLastModified = lastModified;
}
}
}
return fileLastModified;
}
简而言之,它试图找到最后修改的文件。
File lastModified = Arrays.stream(files)
.filter(File::isDirectory)
.max(Comparator.comparing(File::lastModified))
.orElse(null)
上面的代码可以更改为与 1.7 兼容吗?
否,Stream API 仅在 Java 8
可用upd: 您可以使用 for 循环查找具有最新更改的文件。检查 this post
提供files instanceof File[]
,应该是这样的:
private static File getFileLastModified(File[] files) {
File fileLastModified = null;
long maxLastModified = Long.MIN_VALUE;
for (File file : files) {
if (file.isDirectory()) {
final long lastModified = file.lastModified();
if (lastModified > maxLastModified) {
fileLastModified = file;
maxLastModified = lastModified;
}
}
}
return fileLastModified;
}
简而言之,它试图找到最后修改的文件。