有没有办法缩短这个if()
陈述?为了避免string.equals()
某种方式重复?
if (extension.equals("jpg") || extension.equals("JPG") || extension.equals("png") || extension.equals("PNG") || extension.equals("bmp") || extension.equals("BMP") || extension.equals("jpeg") || extension.equals("JPEG"))
{
tmp.setIcon(new ImageIcon(getClass().getResource("/menage/Resources/imageIco.png")));
}
Run Code Online (Sandbox Code Playgroud)
看起来像这样的东西:
if (extension.equals(("jpg")||("JPG")||("png")||("PNG")||("bmp")||("BMP")||("jpeg")||("JPEG")))
{
tmp.setIcon(new ImageIcon(getClass().getResource("/menage/Resources/imageIco.png"));)
}
Run Code Online (Sandbox Code Playgroud)
我知道这个问题看起来很奇怪,但是if()
如此长的条件列表不清楚,需要大量的写作.
首先equals(...)
改为equalsIgnoreCase(...)
.
其他选项,使用您的图像扩展创建一个小写字符串的HashSet(或大写字母,如果需要),并查看它是否包含您感兴趣的字符串,更改为小写:
if (imageExtSet.contains(myExtension.toLowerCase()) {
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
167 次 |
最近记录: |