我在processing(一种java)中编写一个简单的草图,并使用this位代码扫描文件夹中的jpgs。我希望能够将它作为一个函数使用,所以我可以像这样使用它:
String[] images;
void setup() {
images = scanForJpgs();
}
String[] scanForJpgs() {
// set target folder
java.io.File folder = new java.io.File(dataPath(""));
// set filter (which returns true if file's extension is .jpg)
java.io.FilenameFilter jpgFilter = new java.io.FilenameFilter() {
boolean accept(File dir, String name) {
return name.toLowerCase().endsWith(".jpg");
}
};
// list files in target folder, passing the filter as parameter
String[] filenames = folder.list(jpgFilter);
return filenames;
}
但它会抛出“无法降低FilenameFilter 中继承方法的可见性”错误。我如何解决这个问题,以便像函数一样使用它?
答案 0 :(得分:2)
声明方法public
而不是package-private:
public boolean accept(File dir, String name) {