3.1.1 fertig

This commit is contained in:
joachimschmidt557 2019-02-12 19:42:34 +01:00
parent cafb36cb26
commit 7b2fdc159b

View file

@ -6,6 +6,7 @@ import java.util.List;
import java.util.function.Function;
import java.util.function.Predicate;
import java.util.stream.Collector;
import java.util.stream.Collectors;
import game.map.Castle;
@ -78,8 +79,9 @@ public class Graph<T> {
* @return Eine Liste aller Knotenwerte
*/
public List<T> getAllValues() {
// TODO: Graph<T>#getAllValues()
return new ArrayList<>();
return nodes.stream().map(x -> x.getValue()).collect(Collectors.toList());
}
/**
@ -90,8 +92,9 @@ public class Graph<T> {
* @return Die Liste aller zum Knoten zugehörigen Kanten
*/
public List<Edge<T>> getEdges(Node<T> node) {
// TODO: Graph<T>#getEdges(Node<T>)
return new ArrayList<>();
return edges.stream().filter(x -> x.getNodeA().equals(node)).collect(Collectors.toList());
}
/**
@ -102,8 +105,11 @@ public class Graph<T> {
* @return Die Kante zwischen beiden Knoten oder null
*/
public Edge<T> getEdge(Node<T> nodeA, Node<T> nodeB) {
// TODO: Graph<T>#getEdge(Node<T>, Node<T>)
return null;
return edges.stream()
.filter(x -> x.getNodeA().equals(nodeA) && x.getNodeB().equals(nodeB))
.findFirst()
.orElse(null);
}
/**
@ -112,8 +118,12 @@ public class Graph<T> {
* @return Ein Knoten mit dem angegebenen Wert oder null
*/
public Node<T> getNode(T value) {
// TODO: Graph<T>#getNode(T)
return null;
return nodes.stream()
.filter(x -> x.getValue().equals(value))
.findFirst()
.orElse(null);
}
/**