我正在尝试确定字符串是否包含正整数。我的代码是:
public void isInt(String str) throws NotIntException{
String integer=str.replaceAll("\\d","");
System.out.println(integer);
if (!integer.equals("")){
throw new NotIntException("Wrong data type-check fields where an integer"+
" should be.");
}//end if
if (integer.equals("-")){
System.out.println(integer);
throw new NotIntException("Error-Can't have a negative count.");
}//end if
}//end method
我正在用字符串“-1”对此进行测试,它应该在 replaceAll() 之后变为“-”。这应该输入两个 if 语句。但它只进入第一个。我也尝试了 == 比较,以防万一,但它也不起作用。对我来说奇怪的是,无论我是要满足第二个 if 语句的条件还是满足它的否定 [即,!integer.equals("-")],程序仍然没有进入 if....
谢谢,通常我的比较问题只是我缺少一些基本的东西,但我真的没有在这里看到任何东西......