For循环似乎在Java中运行的不仅仅是必要的

时间:2012-08-14 06:08:32

标签: java data-structures

for(LogProcess process : lo) {
  for(PathInfo info : process.getPathinfolist()) {
    a1.add(info.getFilepath());
  }
}

我这里有这段代码。 loLinkedList大小的实例。

LinkedList是:

public LogProcess(int rev, String auth, String date,
                  List<PathInfo> pathinfolist)

现在PathInfo属于:

public PathInfo(String action,String kind,String filepath)

现在我的LinkedList尺寸为130。这很好。

但是process.getPathInfoList()正在从xml读取1657条记录。但是在循环之后,当我使用a1检查a1.size()的大小时,它显示7216,这是不可能的。我哪里错了?

2 个答案:

答案 0 :(得分:2)

你循环遍历不同的流程实例,这些流程实例可能有不同数量的路径信息,这对我来说并不陌生。

您应该显示每个列表的所有代码和大小

答案 1 :(得分:0)

如上所述,a1.size()是所有LogProcess对象中PathInfo的总数。正如你所说,有130个日志进程对象,getPathInfo读取1657,但你没有提到哪个logprocess有那么多的pathinfo。都有相同的号码吗?我想你必须提供更多细节,如上所述。