以这个构造函数为例:
private final List<ArrayList<Integer>> adjList;
public Graph(int vertexCount) {
adjList = new ArrayList<ArrayList<Integer>>(vertexCount);
for (int i = 0; i < vertexCount; i++) {
adjList.add(new ArrayList<Integer>());
}
}
这是有人想要一个顶点列表,他只需提供顶点即可。
public List<Integer> adj(int vertex) {
return adjList.get(vertex);
}
现在,如果顶点没有任何节点连接到它,那么返回值将是大小为 0 的列表。通过添加显式检查返回一个 Collections.Empty_List 是否有好处:如果列表大小为 0 那么返回 Collections.Empty_List ?