最优雅的 isNumeric() java 解决方案

2022-09-03 05:50:57

我现在正在将一小段PHP代码移植到java中,我依靠该函数来确定是否是一个数字。Java中似乎没有等效的函数,我对迄今为止发现的当前解决方案不满意。is_numeric($x)$x

我倾向于在这里找到的正则表达式解决方案:http://rosettacode.org/wiki/Determine_if_a_string_is_numeric

我应该使用哪种方法,为什么?


答案 1

请注意,PHP isNumeric() 函数将正确确定十六进制和科学记数法是数字,而您链接到的正则表达式方法则不会。

一种选择,特别是如果你已经在使用Apache Commons库,是使用Commons-Lang中的NumberUtils.isNumber()。它将处理 PHP 函数将处理的相同情况。


答案 2

你有没有研究过使用StringUtils库?有一个 isNumeric() 函数,它可能是你要找的。(请注意,“”将计算为 true)


推荐