繁体   English   中英

字符串数组长度java

[英]String array length java

你能告诉我如何获取保留数组的大小吗?

看看这个:

public static String arr_list[][][][][]= new String[2][10][10][2][5];

我知道这很重要。

我在此处放置数据,并希望获取第三个元素的数据大小。

arr_list[0][0].length但仍返回10

但是在[0][0]我只有4个值:

arr_list[0][0][0]..
arr_list[0][0][1]..
arr_list[0][0][2]..
arr_list[0][0][3]..

如何返回4 ,而不是10

数组是恒定大小的容器,它们始终具有声明的长度,这就是为什么您总是得到10的原因。

考虑改为使用List (例如ArrayList )。

您已经初始化了5d数组.....第一维的大小是2,2d是10 3d是10 4d是2并且5th d的大小是5。

因此,如果您将其保留为空,则总大小将为2 * 10 * 10 * 10 * 2 * 5 = 20,000 ..如果要计算大小,它们将自动由空字符填充... 。您可以找到第一个空字符在哪里,并计算在其之前的元素

如果使用new String[2][10][10][2][5]初始化数组,则已明确告诉系统您希望arr_list [0] [0]具有10个元素。 恐怕它会相信您,并创建一个10元素数组。

如果您希望大小根据实际元素的数量而变化,则需要动态初始化它。

public static String arr_list[][][][][]= new String[2][][][][]; 创建具有两个String[][][][]类型的空引用的arr_list。 然后,您可以使用包含下一个级别实际需要的元素数量的数组来初始化它们,等等。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM