-1

这很荒谬,我不确定为什么会发生这种情况,但是每当我尝试使用.keySet.entrySet在 Eclipse 中出现错误以为其创建新方法时。

4

1 回答 1

6

该类型SparseMatrix未声明名为 的方法entrySet。类型TreeMap可以。您应该在该类型的引用上调用该方法。可能实现一个 getter 来检索对象的matrix字段SparseMatrix

// inside the SparseMatrix class
public TreeMap<Integer, TreeMap<Integer, Double> getMatrix() {
    return matrix;
}

然后调用此方法并链接entrySet()调用

public static boolean equals(SparseMatrix a, SparseMatrix b) {
    System.out.println("The entry set is:\n" + a.getMatrix().entrySet());
}

请记住,在编译时方法调用是根据变量的类型解析的。如果该类型没有直接或通过继承声明该​​方法,则会发生编译错误。

于 2013-11-12T05:45:56.457 回答