一般写法(双层for循环+if语句)复杂
for(int i = 0; i < list2.size(); i++){
for(int j = 0; j < list3.size(); j++){
if(list3.get(j).equals(list2.get(i))){
//操作
}
}
}
简化一下(利用String.indexOf()方法)
List<String> isPrintBarCodeByPatientId = Db.query("select BarCodeNo from t_lis where PatientId=?","0000000072");
StringBuffer sb = new StringBuffer("");
for(String s : isPrintBarCodeByPatientId)
sb.append(s+"|");
String s = sb.toString();
List<Record> itemList = DbQueryKit.getBarCodesByPatientNo("0000000066");
boolean flag = false;
for (int i = 1; i <= infoList.size(); i++) {
Record info = infoList.get(i - 1);
String barCode = Dbtool.readDbString(info.get("BARCODE"));
flag = s.indexOf(barCode) != -1;
if(flag){
//操作
}
}