Java - 如何检查数组是否有值

标签 java apache-poi

我有一个代码,我在其中创建一个 .xlsm 文件,在确定的部分,该代码执行 mysql 选择并将结果集设置在一个数组中,我必须检查这个数组是否为空。但是,或者,它每次都返回 true,或者,它每次都返回 false。例如,这个选择在第 296 个索引中有一个值,在第 322 个索引中有一个值,但是,这一次,empty boolean 值返回给我 true,其中,是返回 false,因为数组中有值。我尝试了一些东西,但是,我没有得到任何解决方案。

我做错了什么?

这是我的 java 代码:

ResultSet check_name = connect.createStatement().executeQuery("select `name` from `company`"); 
ArrayList<String> names = new ArrayList<String>(); boolean empty = true;

while(check_name.next()){ 
 names.add(name.getString("name")); 
} 

for(int l = 0; l < names.size(); l++){
 if(names.get(l).contains("[0-9a-zA-Z]+")){
  empty = false; break; 
 } 
}

if(empty == true){
 cell = row.createCell(26);
 cell.setCellValue("it's empty");
}else{
 cell = row.createCell(26);
 cell.setCellValue("it's not empty");
}

最佳答案

您应该使用 String 类的 trim()isEmpty() 方法。

for(int l = 0; l < names.size(); l++){
 if(names.get(l)!=null && !(names.get(l).trim().isEmpty())){
  empty = false; break; 
 } 
}

关于Java - 如何检查数组是否有值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50685589/

相关文章:

java - 如何通过 ContentProvider 向 Facebook 提供图像?

java - 您将如何在其中实现二叉树?

java - Solr - 匹配以特定单词开头的句子

java - 定时器任务只运行一次

java - "java.lang.ClassNotFoundException: oracle.jdbc.pooling.Factory"

java - POI 设置前景色在 if 语句中不起作用

java - 我的错误在哪里?

java - Apache POI 表 `index` 中的参数 `getMergedRegion` 是什么意思?

java - 当我使用java将多个图像插入word时无法附加word文档

java - 将 excel 列中的字符串数据提取到 hashmap 中时出现问题