如何在Java中获取n位数的最大十进制值?

Ben*_*ero 1 java math

在我们的代码中,我们有一个允许的最大位数(比方说8),以十进制表示(如基数10).如何使用此数字来查看可能的值是否在该范围内(099,999,999)?

如果我们使用二进制数字,我会做类似的事情:

value < 1<<(MAX + 1)
Run Code Online (Sandbox Code Playgroud)

但当然这不适用于小数.我也考虑过这样的事情:

Long.toString(value).length() < MAX
Run Code Online (Sandbox Code Playgroud)

但这似乎太沉重了.

rad*_*aph 8

if (value >= 0 && value < Math.pow(10, MAX))
Run Code Online (Sandbox Code Playgroud)