Java 带有子字符串的If-else语句

Java 带有子字符串的If-else语句,java,if-statement,substring,Java,If Statement,Substring,我试图做一个if-else语句,其中中间值查看子字符串中的第四位数字是否为整数,如果是,我希望数字前面有一个负数,如果不是,我希望前面没有负数。我得到的错误在else-if行上,它需要一个布尔值并找到一个整数。我如何解决这个问题,以便else-if行检查子字符串4是否为整数 if (strAlt.equals("03")) { return "N/A"; } else if (Integer.parseInt(strPos.substring(4)))

我试图做一个if-else语句,其中中间值查看子字符串中的第四位数字是否为整数,如果是,我希望数字前面有一个负数,如果不是,我希望前面没有负数。我得到的错误在else-if行上,它需要一个布尔值并找到一个整数。我如何解决这个问题,以便else-if行检查子字符串4是否为整数

 if (strAlt.equals("03"))
   {
       return  "N/A";
   }
   else if (Integer.parseInt(strPos.substring(4)))
   {
       return "-" +strPos.substring(4,7) + "C";        
   }      
   else
    {
       return strPos.substring(4,7) + "C";
    }

检查单个字符是否为数字的方法不是使用
Integer.parseInt
(返回的是
int
,而不是
布尔值
)。您可以使用
字符.isDigit

else if (strPos.length() > 4 && Character.isDigit(strPos.charAt(4)))

请注意,它正在检查索引4处的字符,这是第五个字符(初始字符位于索引0处,而不是一个)。

检查单个字符是否为数字的方法不是使用
Integer.parseInt
(返回的是
int
,而不是
布尔值
)。您可以使用
字符.isDigit

else if (strPos.length() > 4 && Character.isDigit(strPos.charAt(4)))
注意,它正在检查索引4处的字符,这是第五个字符(初始字符位于索引0处,而不是1处)