我正在尝试学习和实现有向图,并且在执行程序时遇到了一些困难。
// ADD Function
public boolean addVertex(Vertex<T> v)
{
boolean added = false;
if (verticies.contains(v) == false)
{
added = verticies.add(v);
return true;
}
return added;
}
class Vertex<T>
{
private String name;
private T data;
/**
* Create a Vertex with name n and given data
*
* @param n - name of vertex
* @param data - data associated with vertex
*/
public Vertex(String n, T data)
{
incomingEdges = new java.util.ArrayList<Edge<T>>();
outgoingEdges = new java.util.ArrayList<Edge<T>>();
name = n;
this.data = data;
}
}
// Initialization of the Vertices & Edges
public GraphImpl()
{
verticies = new java.util.ArrayList<Vertex<T>>();
edges = new java.util.ArrayList<Edge<T>>();
}
错误:执行程序时,我在调用 addVertex(String) 函数时输入字符串作为输入,并给出错误字符串无法转换为顶点。来自 Java 的错误记录:java.lang.ClassCastException:java.lang.String 无法转换为 DG.Vertex
有人可以解释一下,我做错了什么。谢谢你。