我想知道如何在java中找到普通数组中的元素数量.例如,如果我有一个大小为10的int数组,我只插入了5个元素.现在,我想检查一下我的数组中的元素数量?以下是更详细说明的代码.请帮忙
public static void main(String[] args) {
int [] intArray = new int[10];
char [] charArray = new char[10];
int count = 0;
for(int i=0; i<=5; i++) {
intArray[i] = 5;
charArray[i] = 'a';
}
for(int j=0; j<=intArray.length; j++) {
if(intArray[j] != null) {
count++;
}
}
System.out.println("int Array element : "+ count);
}
Run Code Online (Sandbox Code Playgroud)
代码错了.你声明一个int[]:这不能包含空值,所以这个语句不会编译:
if(intArray[j] != null) {
Run Code Online (Sandbox Code Playgroud)
然后,如果你想存储很多物品,但你不知道如何,你应该使用a Collection,例如ArrayList
List<Integer> ints = new ArrayList<Integer>(); //Or new ArrayList<>(); - Java7
Run Code Online (Sandbox Code Playgroud)
然后,您可以使用以下尺寸:
ints.size();
Run Code Online (Sandbox Code Playgroud)
现在,如果您真的想要使用数组,那么您可以例如计算非零值的数量:
for(int j=0; j<=intArray.length; j++) {
if(intArray[j] != 0) {
count++;
}
}
Run Code Online (Sandbox Code Playgroud)
或者更好的Java 7:
for(int i : intArray) {
if(i!=0) {
count++;
}
}
Run Code Online (Sandbox Code Playgroud)
在Java 8中更好:
Arrays.stream(intArray).filter(i -> i !=0).count();
Run Code Online (Sandbox Code Playgroud)