如何判断long变量为null,或者if()是否可以在Java中包含异常判断?
How to judge long variable is null, or can if() contain an exception judgment in Java?
在我的例子中,results[i]
可能不存在于 HBase table 中,因此使用 getTimestamp()
获取 results[i]'s
时间戳可能会导致异常。 HBase中的时间戳是一个长变量,所以我尝试了两种方法都不行。
if((results[i].listCells().get(0).getTimestamp()) != null){
rowkeytime = results[i].listCells().get(0).getTimestamp();
}
if(((Long)(results[i].listCells().get(0).getTimestamp())) != null){
rowkeytime = results[i].listCells().get(0).getTimestamp();
}
我想知道Java中有没有像下面这样的用法?
if ((results[i].listCells().get(0).getTimestamp()) throws an exception){
rowkeytime = results[i].listCells().get(0).getTimestamp();
}
使用try-catch
处理异常:
try {
results[i].listCells().get(0).getTimestamp();
} catch (NullPointerException e) {
// Do something if an exception is thrown
}
在您的情况下,最好事先检查您的输入。
if (results != null && results.length >= i - 1) {
results[i].listCells().get(0).getTimestamp();
// You may want to add additional checks for
// the return values of listCells() and get(0)
} else {
// Do something else
}
...in my case, results[i] might not exist...
你是说 results[i] 可以为 null 那么最好检查一下引用是否指向 null,
这将按照以下方式完成:
results[i] == null
你的结果 returns 为真[i] 为空,
在我的例子中,results[i]
可能不存在于 HBase table 中,因此使用 getTimestamp()
获取 results[i]'s
时间戳可能会导致异常。 HBase中的时间戳是一个长变量,所以我尝试了两种方法都不行。
if((results[i].listCells().get(0).getTimestamp()) != null){
rowkeytime = results[i].listCells().get(0).getTimestamp();
}
if(((Long)(results[i].listCells().get(0).getTimestamp())) != null){
rowkeytime = results[i].listCells().get(0).getTimestamp();
}
我想知道Java中有没有像下面这样的用法?
if ((results[i].listCells().get(0).getTimestamp()) throws an exception){
rowkeytime = results[i].listCells().get(0).getTimestamp();
}
使用try-catch
处理异常:
try {
results[i].listCells().get(0).getTimestamp();
} catch (NullPointerException e) {
// Do something if an exception is thrown
}
在您的情况下,最好事先检查您的输入。
if (results != null && results.length >= i - 1) {
results[i].listCells().get(0).getTimestamp();
// You may want to add additional checks for
// the return values of listCells() and get(0)
} else {
// Do something else
}
...in my case, results[i] might not exist...
你是说 results[i] 可以为 null 那么最好检查一下引用是否指向 null,
这将按照以下方式完成:
results[i] == null
你的结果 returns 为真[i] 为空,