我有一个代码,我在其中创建一个 .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/