我有以下设置。
Table<Integer, Integer, Float> store = HashBasedTable.create();
int i = 0, j = 0;
for (List<String> stack_i : stacks) {
j = 0;
for (String entry_j : stack_i) {
Float alpha = doSomeMagic(entry_j, token);
if (alpha != null)
store.put(i, j, alpha);
j++;
}
i++;
}
if (store.cellSet().size() > 0) {
for (Table.Cell<Integer, Integer, Float> cell : store.cellSet()) {
if (cell.getValue() > max) {
max = cell.getValue();
maxchainIndex = cell.getRowKey();
}
}
}
我遇到的问题是我收到以下JVM错误:
SEVERE:java.lang.IllegalAccessError:尝试访问方法com.google.common.collect.Iterators.emptyModifiableIterator()Ljava / util / Iterator;来自com.google.common.collect.StandardTable $ CellIterator 在com.google.common.collect.StandardTable $ CellIterator。(StandardTable.java:310) 在com.google.common.collect.StandardTable $ CellIterator。(StandardTable.java:306) 在com.google.common.collect.StandardTable $ CellSet.iterator(StandardTable.java:280)
错误发生在
行for(Table.Cell<Integer,Integer,Float> cell:store.cellSet())
我看不出我在这里做错了什么。我已经检查过,商店里面至少有一件商品。
答案 0 :(得分:0)
对我来说很好,我能够成功运行以下内容。你可以在没有任何其他元素的情况下运行它来消除与for循环无关的任何有趣的业务吗?
Table<Integer, Integer, Double> abc = HashBasedTable.create();
abc.put(1, 1, 10d);
for (Table.Cell<Integer, Integer, Double> x : abc.cellSet()) {
System.out.println(x.toString());
}