这是一个元素的数组.在这种情况下包含字符串“csv”.
当作为声明的一部分编写时,可以用更简洁的形式编写:
private final String[] okFileExtensions = { "csv" };
多元素数组在值之间使用逗号.根本不需要任何价值观.
private final String[] okFileExtensions = { "csv", "tsv" };
private final String[] noFileExtensions = { };
值得注意的是,尽管引用是最终的,但数组不是.所以你可以写:
okFileExtensions[0] = "exe";
解决这个问题的方法是切换到集合并使用不可修改的实现:
private final Set okFileExtensions = Collections.unmodifiableSet(
new HashSet(Arrays.asList({
"csv"
}));
JDK8旨在增强集合,使其更简洁.可能在语言中列出和设置文字.可能是:
private final Set okFileExtensions = { "csv" };
集合通常应优先于数组(对于引用类型).