我正在使用属性-D
方法在命令行上向 jar 文件提供参数。代码如下:
String prop1 = "one";
String val1 = System.getProperty(prop1);
System.out.println(val1);
这可行,但是当我尝试在更大的程序中实现它时,奇怪的事情发生了。如果没有参数,这将打印 null
,这很好。但是,如果我然后执行类似 boolean test = val1.equals(null);
的操作,我会遇到似乎与我提供的代码无关的问题。有什么想法吗?
最佳答案
您遇到了 NullPointerException
因为您尝试对 null 引用求值方法。如果 val1 为 null,则无法调用其方法。如果你想测试 null,你应该使用 ==
进行测试。
if (val1==null)
// doSomething
或
if(val1!=null && val.equals("aValue")) {
// Do something
}
关于java - 如何修复Java系统属性错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10233754/