This question already has answers here:
Way to get number of digits in an int?

(30个答案)


5年前关闭。




给出以下代码。
 int[] eg = {21,20,1,12,2}
 public numbers(int[] eg)
 {
     for(int i=0; i < eg.length; i++)

我希望eg.length为5,其中eg[0] = 21 eg[1] = 20,eg[3] = 1

我想检查eg [i]的每个元素,看看它是1位数还是2位数,我尝试eg[0].length无济于事,但是我以为那仅适用于数组列表是正确的吗?

最佳答案

将数字转换为字符串并获取长度。

int length = String.valueOf(eg[i]).length();

或者
int length = Integer.valueOf(eg[i]).toString().length();

使用此数学方程式(假设数组中的所有数据均为正数)。
int length = (int)(Math.log10(eg[i])+1);

10-06 04:11