/* public class EdgeSet API: constructor: public EdgeSet() accessor: public Edge getEdge(int index) mutator: public void addEdge(Edge edge) misc: public String toString() public int length() */ public class EdgeSet { private Edge [] edges; private int edgeCount; private static final int MAX_EDGES = 40; public EdgeSet(){ edges = new Edge [MAX_EDGES]; edgeCount = 0; } public String toString() { String string = ""; for (int i = 0; i < edgeCount; i++) { string += edges[i].toString() + "; "+ '\n'; } return string; } public void addEdge(Edge edge) { if (alreadyPresent(edge)) { return; } if (edgeCount < MAX_EDGES) { edges[edgeCount] = edge; edgeCount++; return; } System.out.println("Error: EdgeSet capacity " + MAX_EDGES + ") exceeded"); System.out.println("Error: cannot add edge (" + edge.toString() + ")"); } private boolean alreadyPresent(Edge edge) { for(int i = 0; i < edgeCount; i++) { if (edge.equals(edges[i])) { return true; } } return false; } public int length() { return edgeCount; } public Edge getEdge(int index) { if (index < edgeCount) { return edges[index]; } System.out.println("Error: EdgeSet:getEdge index => edgeCount"); System.out.println("Error: index = " + index + " edgeCount = " + edgeCount); return null; } }