N - Node parameter typeV - Value parameter type@Beta public abstract class AbstractValueGraph<N,V> extends Object implements ValueGraph<N,V>
ValueGraph. It is recommended to extend
 this class rather than implement ValueGraph directly.
 The methods implemented in this class should not be overridden unless the subclass admits a more efficient implementation.
| Constructor and Description | 
|---|
| AbstractValueGraph() | 
| Modifier and Type | Method and Description | 
|---|---|
| Graph<N> | asGraph()Returns a live view of this graph as a  Graph. | 
| int | degree(N node)Returns the count of  node's incident edges, counting self-loops twice (equivalently,
 the number of times an edge touchesnode). | 
| protected long | edgeCount()Returns the number of edges in this graph; used to calculate the size of  edges(). | 
| Set<EndpointPair<N>> | edges() | 
| boolean | equals(Object obj)Returns  trueiffobjectis aValueGraphthat has the same elements and
 the same structural relationships as those in this graph. | 
| boolean | hasEdgeConnecting(N nodeU,
                 N nodeV)Returns true if there is an edge directly connecting  nodeUtonodeV. | 
| int | hashCode()Returns the hash code for this graph. | 
| int | inDegree(N node)Returns the count of  node's incoming edges (equal topredecessors(node).size())
 in a directed graph. | 
| int | outDegree(N node)Returns the count of  node's outgoing edges (equal tosuccessors(node).size())
 in a directed graph. | 
| String | toString()Returns a string representation of this graph. | 
clone, finalize, getClass, notify, notifyAll, wait, wait, waitadjacentNodes, allowsSelfLoops, degree, edges, edgeValueOrDefault, hasEdgeConnecting, inDegree, isDirected, nodeOrder, nodes, outDegree, predecessors, successorspublic AbstractValueGraph()
public Graph<N> asGraph()
ValueGraphGraph. The resulting Graph will have an
 edge connecting node A to node B if this ValueGraph has an edge connecting A to B.asGraph in interface ValueGraph<N,V>public final boolean equals(@Nullable Object obj)
ValueGraphtrue iff object is a ValueGraph that has the same elements and
 the same structural relationships as those in this graph.
 Thus, two value graphs A and B are equal if all of the following are true:
directedness.
 node sets.
 edge sets.
 value of a given edge is the same in both A and B.
 Graph properties besides directedness do not affect equality.
 For example, two graphs may be considered equal even if one allows self-loops and the other
 doesn't. Additionally, the order in which nodes or edges are added to the graph, and the order
 in which they are iterated over, are irrelevant.
 
A reference implementation of this is provided by equals(Object).
public final int hashCode()
ValueGraphedges to the associated edge value.
 A reference implementation of this is provided by hashCode().
protected long edgeCount()
edges(). This
 implementation requires O(|N|) time. Classes extending this one may manually keep track of the
 number of edges as the graph is updated, and override this method for better performance.public Set<EndpointPair<N>> edges()
public int degree(N node)
node's incident edges, counting self-loops twice (equivalently,
 the number of times an edge touches node).
 For directed graphs, this is equal to inDegree(node) + outDegree(node).
 
For undirected graphs, this is equal to adjacentNodes(node).size() + (1 if node has an incident self-loop, 0 otherwise).
 
If the count is greater than Integer.MAX_VALUE, returns Integer.MAX_VALUE.
public int inDegree(N node)
node's incoming edges (equal to predecessors(node).size())
 in a directed graph. In an undirected graph, returns the degree(Object).
 If the count is greater than Integer.MAX_VALUE, returns Integer.MAX_VALUE.
public int outDegree(N node)
node's outgoing edges (equal to successors(node).size())
 in a directed graph. In an undirected graph, returns the degree(Object).
 If the count is greater than Integer.MAX_VALUE, returns Integer.MAX_VALUE.
public boolean hasEdgeConnecting(N nodeU, N nodeV)
nodeU to nodeV. This is
 equivalent to nodes().contains(nodeU) && successors(nodeU).contains(nodeV).
 In an undirected graph, this is equal to hasEdgeConnecting(nodeV, nodeU).
Copyright © 2010–2017. All rights reserved.