[英]Using a hashmap to iterate over a list of hashmaps
我正在使用哈希aclLine
每个处理的aclLine
添加相似的值
for (String aclLine : refinedFileContents){
if(Some condition)
{
staticVariablesMap.put("lineNumber", **lineNumber**);
staticVariablesMap.put("**srcHostName**", batchBean.getSourceIpAddress());
staticVariablesMap.put("batchBean", batchBean);
}
}
稍后,我要遍历每行的这些哈希映射,并执行特定于给定键,值对的某些操作(例如,获取该lineNumber
的srcHostName
),并使用它来处理后续步骤。 如何为哈希图中的每个srcHostName
条目遍历这些收集的哈希图? 我应该使用ArrayList / List存储哈希图的每个实例吗? 这可行吗?
在我看来,您应该将哈希图中的属性组合成一个对象。 然后,您可以只使用一个哈希图。
public class AclLine {
private long lineNumber;
private String srcHostName;
private Object batchBean;
}
Map<AclLine> lines = new HashMap<AclLine>();
// Or maybe a List?
List<AclLine> lines = new ArrayList<AclLine>();
还是有原因需要这些“并行”映射条目?
我没有完全解决您的问题,就像您只将值放在一个哈希图中一样,并且您想要迭代哈希图。您可以像这样迭代哈希图。
Iterator<Entry<String, Object>> it = hashMap.entrySet().iterator();
while (it.hasNext())
{
Map.Entry<String, Object> entry = (Map.Entry<String, Object>)it.next();
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.