public static String islegal(List<Input1> input1s){ if (input1s == null){ return "数据为空"; } Set<String> appears = new HashSet<>(); for (Input1 input1 : input1s){ if (!InputConstants.SC.equals(input1.getBrtname()) && BrtNoUtil.validName(input1.getBrtname())){ if (appears.contains(input1.getBrtname())){ return "机构名: "+input1.getBrtname()+"数据重复"; }else{ if (input1.getBrtname() == null || input1.getPn() == null || input1.getIpp() == null){ return "数据存在空值,请检查"; } appears.add(input1.getBrtname()); } }else{ return "机构名: "+input1.getBrtname()+"无效,其不是约定的21个机构"; } } if (appears.size() != 21){ return "上传的数据条目为:"+appears.size()+", 正确值为22"; } return InputConstants.SUCCESS; }
时间: 2024-02-14 09:29:26 浏览: 126
List<Map<String, List<String>>> data保存到SharedPreference和读取
4星 · 用户满意度95%
这段代码定义了一个名为"islegal"的静态方法,其输入参数是一个`List<Input1>`类型的列表。该方法返回一个字符串类型的结果。
在方法内部,首先进行了空值检查,如果输入的列表为null,则返回"数据为空"作为结果。
接下来,创建了一个`HashSet`实例,用于存储出现过的机构名。
然后,通过遍历`input1s`列表中的元素,对每个元素进行一系列的判断和检查。
首先,判断`input1.getBrtname()`(`Input1`对象的一个属性)是否等于特定的常量字符串`InputConstants.SC`,并且通过`BrtNoUtil.validName()`方法检查机构名是否是有效的21个机构之一。如果不满足这两个条件,则返回一个包含机构名和"无效,其不是约定的21个机构"的字符串作为结果。
如果机构名有效,则继续进行下一步判断。首先检查机构名是否已经出现过,如果已经出现过,则返回一个包含机构名和"数据重复"的字符串作为结果。如果机构名没有出现过,则继续进行下一步检查。
接着,检查`input1.getBrtname()`、`input1.getPn()`和`input1.getIpp()`这三个属性是否存在空值。如果存在空值,则返回一个包含"数据存在空值,请检查"的字符串作为结果。
最后,将机构名添加到出现过的机构名集合中。
在循环结束后,检查出现过的机构名的数量是否等于21。如果不等于22,则返回一个包含"上传的数据条目为:"、出现过的机构名数量和"正确值为22"的字符串作为结果。
如果以上所有条件都满足,则返回一个指定的成功常量字符串`InputConstants.SUCCESS`作为结果。
这个方法的作用是对输入的数据进行一些合法性检查,根据不同的情况返回相应的错误信息或成功标识。
阅读全文