Java 带 ArrayList 空检查的链接 HashMap
Java Linked HashMap with ArrayList empty checking
如何检查特定的 kay 在 LinkedhashMap 中是否为空值
Map<String,List<String>>resultTable = new LinkedHashMap<String, List<String>>();
结果表如下
键 = Sr.ID
,值为 {660316, 660320, 590089, 661725, 661865, 661864, 661862, 660300}
键 = Docket
,值为 {0150, 0150b1, 142747, 1725.186589, 2708.5, 2738.56, 45rdfg, 56t}
键 = Rec No
,值为 {,8821893, , , , , , , }
我们如何检查特定键(即 Sr.ID 或 Docket 或 Rec No.)在列表中是否具有空值(Rec No,键具有空值)
我们如何检查特定键(即 Sr.ID 或 Docket 或 Rec No.)在列表中是否没有空值
Docket Key 没有空值
您的值是 List<String>
类型。
要检查任何给定键的列表元素是否为空,您可以简单地:
// iterate map entries
for (String key: resultTable.keySet()) {
// TODO null check!
if (resultTable.get(key).contains("")) {
// list has an empty element
System.out.printf("Found an empty value for %s%n", key);
}
}
备注
这是一个带有 BiConsumer<String,List<String>>
lambda 的 Java 8 语法:
resultTable.forEach(
(s,l) -> {
// TODO null check!
if (l.contains("")) System.out.printf("Found an empty value for %s%n", s);
}
);
这是检查特定键的空值的简单方法:
private boolean checkEmptyVal(String key){
boolean result = false;
List<String> val = resultTable.get(key);
if(val != null && val.contains("")) {
result = true;
}
return result;
}
根据您的示例,空值不是 null
而是空字符串。
要检查列表中的空值,您可以执行 list.contains("")
。
翻译成你的上下文,这是:
if (resultTable.get(key).contains("")) {
// empty value here
}
依次检查所有键:
// iterate map values
for (List<String> value: resultTable.values()) {
if (value.contains("")) {
// list has an empty element
}
}
您还可以添加代码以从列表中删除所有空值:
while (list.remove("")) {
log.debug("Empty value removed");
}
如何检查特定的 kay 在 LinkedhashMap 中是否为空值
Map<String,List<String>>resultTable = new LinkedHashMap<String, List<String>>();
结果表如下
键 = Sr.ID
,值为 {660316, 660320, 590089, 661725, 661865, 661864, 661862, 660300}
键 = Docket
,值为 {0150, 0150b1, 142747, 1725.186589, 2708.5, 2738.56, 45rdfg, 56t}
键 = Rec No
,值为 {,8821893, , , , , , , }
我们如何检查特定键(即 Sr.ID 或 Docket 或 Rec No.)在列表中是否具有空值(Rec No,键具有空值)
我们如何检查特定键(即 Sr.ID 或 Docket 或 Rec No.)在列表中是否没有空值 Docket Key 没有空值
您的值是 List<String>
类型。
要检查任何给定键的列表元素是否为空,您可以简单地:
// iterate map entries
for (String key: resultTable.keySet()) {
// TODO null check!
if (resultTable.get(key).contains("")) {
// list has an empty element
System.out.printf("Found an empty value for %s%n", key);
}
}
备注
这是一个带有 BiConsumer<String,List<String>>
lambda 的 Java 8 语法:
resultTable.forEach(
(s,l) -> {
// TODO null check!
if (l.contains("")) System.out.printf("Found an empty value for %s%n", s);
}
);
这是检查特定键的空值的简单方法:
private boolean checkEmptyVal(String key){
boolean result = false;
List<String> val = resultTable.get(key);
if(val != null && val.contains("")) {
result = true;
}
return result;
}
根据您的示例,空值不是 null
而是空字符串。
要检查列表中的空值,您可以执行 list.contains("")
。
翻译成你的上下文,这是:
if (resultTable.get(key).contains("")) {
// empty value here
}
// iterate map values
for (List<String> value: resultTable.values()) {
if (value.contains("")) {
// list has an empty element
}
}
您还可以添加代码以从列表中删除所有空值:
while (list.remove("")) {
log.debug("Empty value removed");
}