如果条件避免重复

时间:2017-11-02 10:33:47

标签: java if-statement

我有三个如果条件如下

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条件都会做同样的事情。无论如何,我可以避免重复这些条件,并将它组成一行吗?

1 个答案:

答案 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))

以上将使其成为单行