获取 list 里面,最小长度的那个数(string类型)


private static String getTransferRegisterContent(String txtValue) throws ActiveRecordException {
// "应收账款质押和转让登记"开始截取到末尾
String value = txtValue.substring(txtValue.indexOf("应收账款质押和转让登记")+11);
ArrayList<String> arrayList =new ArrayList<>();
arrayList.add(value);
//查询配置表中,中登登记类型
String sql = "SELECT " +
" DICT_NAME " +
"FROM " +
" sys_dict_entry " +
"WHERE " +
" DICT_TYPE_ID = 'zd_register_type' " +
"AND sys_status = 1";
List<Record> zdRegisterList = Db.find(sql);
for (Record zdRegister : zdRegisterList) {
//获取每次循环的登记类型
String register = zdRegister.get("dictName");
// 截取对应登记类型内容
String values = readPdf2Txt.getTxtValueFromString(txtValue, "应收账款质押和转让登记", register);
if (StringUtils.notBlank(values)) {
arrayList.add(values);
}
}

// 获取arrayList中长度最小的对象
// 定义一个map来存截取的数据
HashMap<Integer, String> hashMap = new HashMap<>();
for (String string : arrayList) {
hashMap.put(string.length(), string);
}
// 获取所有的key
Set<Integer> set = hashMap.keySet();
Object[] obj = set.toArray();
// 降序排序
Arrays.sort(obj);
// 最小Value值的变量
String resultValue = "";
// 根据key ,Value
for (Map.Entry<Integer, String> str : hashMap.entrySet()) {
if (obj[0].equals(str.getKey())) {
resultValue = str.getValue();
}
}
return resultValue;
}

posted on 2019-09-27 10:27  小白菜好吃  阅读(1209)  评论(0编辑  收藏  举报

导航