package come;public class fff {
public static boolean isNumeric(String str){
if (str.equals("") || str==null) {
return false;
}
else {
for (int i = str.length() ; --i>=0 ; ){
if (!Character.isDigit(str.charAt ( i ) ) ){
return false;
}
}
return true;
}
}
}package come;public class heheh extends fff{
public static void main(String[] args) {
// TODO 自动生成方法存根
String haha=null;
System.out.println(isNumeric(haha));
}}判断数字 运行 heheh类 报错
Exception in thread "main" java.lang.NullPointerException
at come.fff.isNumeric(fff.java:8)
at come.heheh.main(heheh.java:16)
我已经在方法里判断null值了 为什么还报错啊?
解决方案 »
- 请问谁做过在linux下用java开发串口通信程序,所用第三方jar包是rxtx
- 在线求助高手?点菜单里的某一按钮,相应事件出JProgress,代码看内容
- 计算两点间距离问题(我觉得没有错误,编译老是告诉我对象加点不能调用)
- package
- 求一个完整代码,生成一个新的XML文件
- 再开分,求解~其实很简单的,只需你亲亲一点~!
- 请各位专家给点思路
- 谁用过sun的jade对web程序(包括多个Servlet,JavaBean,第三方类包)混淆成功过?请告知详细的配置步骤。分不是问题
- 要学Java了,请高手们推荐几本好书。
- 请教关于SQLServer连接的问题
- PageLM是什么意思啊
- 发一个基础的Thread类的问题
if (str == null ||str.equals(""))
所以,在进入isNumeric方法后,会进行一个判断,
先判断了str.equals("")这里str是你传进来的null,当然会报错啦。
这样改if (str==null || str.equals("")) {
return false;
}这时候如果判断出str==null为true,则str.equals("")不会被执行。
...
}
你的代码可以改成这样:if (str==null || str.equals(""))