背景:
我编写了一个转换和重命名文件的应用程序。这些文件可能被命名为D01234XXX123.ext
,需要重命名为FaaaabbbbbXXX123.ext
。并且都具有相同的扩展名。
其中:
XXX
:文件的类型(表达文件的主要内容)
aaaa
:我们文件层次结构第一阶段的整数
bbbbb
:我们文件层次结构第二阶段的另一个整数。
我准备了一个包含XXX
可能值
public class TypeFolio {
/**
* TypeFolio : APD
*/
public static final String APD = "APD";
/**
* TypeFolio : APP
*/
public static final String APP = "APP";
这些是大约50个常数
所以我想要做的是过滤TypeFolio
上的文件,如下所示:
for(String type : TypeFolio)
(String) fileName.contains(type);
有什么可能性?
自己创建ArrayList
?
或者是否有另一种方法可以从班级中扫描所有公共String
?
或者Enum
应该是更好的选择吗?
答案 0 :(得分:0)
我更喜欢枚举:
public static void main(String[] args) {
String filename = "APP";
for (TypeFolio type : TypeFolio.values()) {
System.out.println(filename.contains(type.name()));
}
}
private enum TypeFolio {
APD, APP;
}