我有三个如果条件如下
if ((class1.getMethod1().subString(0,1) == "1") && !class1.getMethod1().subString(0,1).equalsIgnoreCase(str1.subString(0,1))
if ((class1.getMethod1().subString(0,1) == "2") && !class1.getMethod1().subString(0,1).equalsIgnoreCase(str1.subString(0,1))
if ((class1.getMethod1().subString(0,1) == "3") && !class1.getMethod1().subString(0,1).equalsIgnoreCase(str1.subString(0,1))
所有if条件都会做同样的事情。无论如何,我可以避免重复这些条件,并将它组成一行吗?
答案 0 :(得分:2)
实际上你有不同的==检查subString是否匹配案例“1”,“2”或“3”。所以你可以写这样的
if(((class1.getMethod1().subString(0,1) == "1")
|| (class1.getMethod1().subString(0,1) == "2")
|| (class1.getMethod1().subString(0,1) == "3"))
&& !class1.getMethod1().subString(0,1).equalsIgnoreCase(str1.subString(0,1))
以上将使其成为单行