java - 遍历数组时忽略空值
问题描述
我正在构建一种从我的数组中打印某些特定值的方法。问题是,该数组中的每个值都有多个由构造函数给出的值,因此该数组如下所示:
Constructor1[] tab1 = {new Constructor1 (var1: 1, var2: 3, var3: "Hi"),
null,
new Constructor1 (var1: 3, var2: 2, var3: "Ho"),
null}...
空值对应于我的构造函数的空实例,我不想删除它们。当我遍历我的数组时,我使用在另一个类中构建的 getter 来获取特定值。
for (int i = 0, i<= tab1.length, i++) {
if (tab[i].getVar2() == 2){
System.out.print(tab[i]);
}
}
我可以正确打印这些值,直到我循环通过 null,这会停止我的程序。我的程序的目标是从数组中提取某些内容并将它们保存到一个文件中,但是由于 null ,我无法提取我想要的所有内容。出于这个项目的目的,我使用 FileReader、PrintReader 等...
解决方案
进行空检查
for (int i = 0, i<= tab1.length, i++) {
if (tab[i]!=null &&tab[i].getVar2() == 2){
System.out.print(tab[i]);
}
}
推荐阅读
- c# - 请求被中止:无法为 XmlTextReader 创建 SSL/TLS 安全通道
- python-2.7 - *Odoo 10* 如何生成报告到 xls/xlsx 文件?
- c++ - Windows 上的无头调试
- responsive-design - 如何在不损失流量的情况下将旧网站转换为响应式
- terraform - 如何授予 AKS 通过 terraform 访问 ACR 的权限?
- microsoft-graph-api - 如何像微软团队一样请求获取租户的所有信息?
- react-native - TypeError:在 React Native 上使用 StorybookJS 将循环结构转换为 JSON
- package - Common lisp——为什么这个符号不是外部的?
- git - 从主分支合并到发布分支后,Visual Studio 2017 未暂存的更改消失
- python-3.x - 如何使用 Pillow(PIL) 以 300 dpi 保存文件?