我谈论Integer
对象数据类型,而不是原始int
Java:如何获得整数(对象)数组的大小?
假设这样的:
Integer[] arr = new Integer[5];
arr[0] = 2;
arr[1] = 2;
arr[2] = 3;
则数组看起来像这样{2,2,3,null,null}
我怎样才能获得数组的大小?在这种情况下,大小为5
我谈论Integer
对象数据类型,而不是原始int
Java:如何获得整数(对象)数组的大小?
假设这样的:
Integer[] arr = new Integer[5];
arr[0] = 2;
arr[1] = 2;
arr[2] = 3;
则数组看起来像这样{2,2,3,null,null}
我怎样才能获得数组的大小?在这种情况下,大小为5
相同的方式,对任何其他阵列 - 使用length
字段:
int length = arr.length; // 5
数组类型的成员是以下全部:
- 公共最终字段
length
,其中包含comp的数量阵列的蚂蚁。长度可能是正数或零。- ...
如果要算上非空值,你会使用类似:
int count = 0;
for (Integer value : arr) {
if (value != null) {
count++;
}
}
(我敢肯定有一个聪明的方法做这在更少的行中使用Java 8中的流API,但让我们现在保持简单...)
虽然初始化了5个元素,不会返回5吗?我想他是在问如何确定有多少元素不为空。 – SnakeDoc 2014-11-04 19:13:59
@SnakeDoc:我不这么认为 - 看问题:“在这种情况下,大小是5” – 2014-11-04 19:14:26
@SnakeDoc在这里与Skeetmeister达成协议。这个问题的措辞似乎表明,OP对*所有成员*感兴趣,无论是否为空。 – christopher 2014-11-04 19:15:03
与其他任何数组相同的方式:'arr.lehgth'。 – 2014-11-04 19:13:36
'null'是所有对象数组的默认元素值。 – 2014-11-04 19:15:07
我将此问题标记为收藏夹,因为我误解了它。我认为问题在于*将使用多少内存(以字节为单位)*。这将如何完成? – 2014-11-05 18:38:42