为了账号安全,请及时绑定邮箱和手机立即绑定

无法访问 GraphNode 中的对象

无法访问 GraphNode 中的对象

波斯汪 2022-12-28 16:09:59
我有一个包含 type 对象的图形GraphNodes。这些节点包含一个对象,该对象City具有是否被感染的属性。我想遍历所有节点并检查城市是否被感染。在我的案例中,我有一个getInfo返回类型对象的通用方法。但是当我尝试链接另一种方法或获取属性时,我看不到它们,就好像它们不可用一样。代码中的所有课程都来自大学,所以我无法添加/删除方法。我已经尝试过,但我仍然无法获得这些方法。ECityforeach代码:import java.io.BufferedReader;import java.io.InputStreamReader;import java.util.LinkedList;import java.util.Stack;import java.util.StringTokenizer;import java.util.LinkedList;class City {    String osnovna_granka;    boolean zarazen;    City(String osnovna_granka, boolean zarazen) {        this.osnovna_granka = osnovna_granka;        this.zarazen = zarazen;    }    @Override    public String toString() {        if (zarazen == true) {            return osnovna_granka + " zarazen";        } else {            return osnovna_granka + " nezarazen";        }    }}class Graph {    int num_nodes;    GraphNode<City> adjList[];    @SuppressWarnings("unchecked")    public Graph(int num_nodes) {        this.num_nodes = num_nodes;        adjList = (GraphNode<City>[]) new GraphNode[num_nodes];    }    int adjacent(int x, int y) {        // proveruva dali ima vrska od jazelot so        // indeks x do jazelot so indeks y        return (adjList[x].containsNeighbor(adjList[y])) ? 1 : 0;    }    void addEdge(int x, int y) {        // dodava vrska od jazelot so indeks x do jazelot so indeks y        if (!adjList[x].containsNeighbor(adjList[y])) {            adjList[x].addNeighbor(adjList[y]);        }    }    void deleteEdge(int x, int y) {        adjList[x].removeNeighbor(adjList[y]);    }    @Override    public String toString() {        String ret = new String();        for (int i = 0; i < this.num_nodes; i++) {            ret += i + ": " + adjList[i] + "\n";        }        return ret;    }}class GraphNode<E> {    private int index;//index (reden broj) na temeto vo grafot    private E info;    private LinkedList<GraphNode<E>> neighbors;
查看完整描述

1 回答

?
阿晨1998

TA贡献2037条经验 获得超6个赞

GraphNode 是一个通用类型,您没有指定类型,IDE 无法推断类型,因此无法建议任何方法。在 for 循环中,您需要指定 GraphNode 的类型。

for(GraphNode<City> gn: g.adjList)


查看完整回答
反对 回复 2022-12-28
  • 1 回答
  • 0 关注
  • 80 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信