java - 如何获取不为空的数组元素
问题描述
我在做礼物(String-type)存储,使用数组,最大5亿。我想获取数组中已使用元素的数量,比如当前有多少礼物库存,(IE我存储了253538个礼物,但我不知道。Java中有没有命令可以知道只有253538数组中包含元素的槽)。但我不知道该怎么做。这是我要使用的代码片段:
static String[] Gifts = new String[500000000];
static int i = 0;
String command, Gift;
while (true) {
//Gift Array Console
String command = scan.next();
if (command == "addgift") {
String Gift = scan.next();
Gifts[i] = Gift;
i++;
}
}
解决方案
您可以遍历数组并计算非空数组元素。
int counter = 0;
for (int i = 0; i < arrayName.length; i ++) {
if (arrayName[i] != null)
counter ++;
}
如果你使用它会更好,ArrayList<String>
这样你就可以使用size()
List<String> arrayName = new ArrayList<String>(20);
System.out.println(arrayName.size());
它将打印0
,因为没有元素添加到 ArrayList。
推荐阅读
- ios - UITableview滚动崩溃中的Swift UISearchController活动时间
- angular - 由于特定宽度而更改 Mat-Grid 的布局顺序
- java - 使用注解时如何在mybatis中使用hashmap将值插入一行?
- java - 使用 Java 中的旧文件详细信息创建文件
- mongodb - 在 ubuntu ec2 上安装 mongodb 的问题
- java - 安装错误:对不起。我们确实尝试过。出问题了。请重试或联系您的管理员
- c# - 即使没有查询错误,也没有在 Access 数据库表中插入任何内容(c#)
- php - 多级嵌套数组配对
- python-3.x - python使用函数而不等待它的返回(即开即弃)?
- c++ - 使用 C++ 动态分配结构的多维数组