Java:Int Array,测量数组元素的长度

在Java中。 假设您已获得以下数组。 或类似的东西

int[] anArray = {10, 20, 30, 40, 1000}; 

有没有办法在anAray [4]中获取数组元素的长度; ?

我需要知道数组[x]是否== 4.如2004年,或1000或1968年。

我怎样才能做到这一点?

您可以将元素转换为字符串并获取字符串的长度,或者如果它的整数可以测试它是否在1000到9999之间。

将数组对象转换为字符串并检查长度:

 anArray[x].toString().length 

您可以将元素转换为字符串,然后查找字符串的长度。

您也可以在while循环中使用10次重复除法来找到答案。

 if (Integer.toString(anArray[x]).length() == 4) { // it's 4 long } 

稍微偏向于方法:

 int lengthOfElement4 = (int) Math.floor((Math.log(anArray[4]) / Math.log(10) + 1); 

@ Mark的第二个选择可能会更快……