繁体   English   中英

Java中的多维数组增量

[英]Increment multidimensional array in Java

我有一个要放入多维数组的文件。 我必须将[0]作为日期(长),并且其中一个维度必须根据第二个令牌的值而增加。

这是代码:

BufferedReader bufStatsFile  = new BufferedReader(new FileReader(statsFile));

String line = null;
List<Long[]> stats = new ArrayList<Long[]>();
stats.add(new Long[11]);
int i = 0; // will be in a loop later

while((line = bufStatsFile.readLine()) != null) {
    StringTokenizer st = new StringTokenizer(line,";");
    while(st.hasMoreTokens()) {
        stats.get(i)[0] = Long.parseLong(st.nextToken());
        stats.get(i)[Integer.parseInt(st.nextToken())]++; // Here is the problematic line.
    }
}
bufStatsFile.close();

但是增量不起作用。 也许是因为我的数组可能不正确,但是我没有找到另一种合适的方法来做到这一点。

好。 我发现了,那当然是愚蠢的。

问题出在我的数组声明中。 我是那样做的:

    List<Long[]> stats = new ArrayList<Long[]>();
    stats.add(new Long[11]);

然后,我尝试增加一个Object而不是一个长整数。

所以现在,我就是这样:

    List<long[]> stats = new ArrayList<>();
    stats.add(new long[11]);

而且它工作正常。

检查文件中的元素是从0到10的数字。为什么只操作第0行,为什么会有一个List?

您的代码会丢弃哪个异常?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM