无法访问 GraphNode 中的对象

我有一个包含 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;


波斯汪
浏览 81回答 1
1回答

阿晨1998

GraphNode 是一个通用类型,您没有指定类型,IDE 无法推断类型,因此无法建议任何方法。在 for 循环中,您需要指定 GraphNode 的类型。for(GraphNode<City>&nbsp;gn:&nbsp;g.adjList)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java