我来自php背景,在php中,有一个array_size()
函数可以告诉您数组中使用了多少个元素。
String[]
数组有类似的方法吗?谢谢。
我来自php背景,在php中,有一个array_size()
函数可以告诉您数组中使用了多少个元素。
String[]
数组有类似的方法吗?谢谢。
Answers:
是的.length
(类属性,而不是方法):
String[] array = new String[10];
int size = array.length;
另外,可能有必要注意一下,如果您有多维数组,则只需在要查询的数组上附加“ [0]”,直到获得适当的轴/元组/维度,即可获得相应的维。
以下代码可能会更好地解释这一点:
public class Test {
public static void main(String[] args){
String[][] moo = new String[5][12];
System.out.println(moo.length); //Prints the size of the First Dimension in the array
System.out.println(moo[0].length);//Prints the size of the Second Dimension in the array
}
}
产生输出:
5
12
数组是对象,它们具有长度字段。
String [] haha = {“ olle”,“ bulle”};
haha.length将是2
答案是“所有人”。一个Java数组分配有固定数量的元素插槽。“长度”属性将告诉您有多少。该数字在数组的生命期内是不变的。对于可调整大小的等效项,您需要一个java.util.List类-您可以在其中使用size()方法来查找正在使用的元素数。
但是,有“正在使用”,然后有正在使用。在类对象数组中,可以有一个元素槽,其元素为空对象,因此即使它们包含在length属性中,但大多数人的定义都没有使用它们(YMMV,取决于应用程序)。没有内置函数可返回空/非空计数。
列表对象还有“使用中”的另一个定义。为避免底层存储结构的过多创建/破坏,这些类中通常会有一些填充。它在内部使用,但不计入返回的size()方法中。而且,如果您尝试在不扩展列表的情况下(通过add方法)访问这些项目,则会收到非法索引异常。
因此,对于列表,您可以为非空的已提交元素,所有已提交元素(包括null元素)或所有元素(包括当前分配的扩展空间)使用“使用中”。
以上所有答案都是正确的。要注意的重要一点是数组具有length属性,但没有length方法。每当在Java中使用字符串和数组时,您可能会遇到的三个基本模型是: