From 7b2fdc159bc5d7098c6d2627494a0cee96065749 Mon Sep 17 00:00:00 2001 From: joachimschmidt557 Date: Tue, 12 Feb 2019 19:42:34 +0100 Subject: [PATCH] 3.1.1 fertig --- Projektgruppe_175/src/base/Graph.java | 26 ++++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/Projektgruppe_175/src/base/Graph.java b/Projektgruppe_175/src/base/Graph.java index 3957bab..b979fa4 100644 --- a/Projektgruppe_175/src/base/Graph.java +++ b/Projektgruppe_175/src/base/Graph.java @@ -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 { * @return Eine Liste aller Knotenwerte */ public List getAllValues() { - // TODO: Graph#getAllValues() - return new ArrayList<>(); + + return nodes.stream().map(x -> x.getValue()).collect(Collectors.toList()); + } /** @@ -90,8 +92,9 @@ public class Graph { * @return Die Liste aller zum Knoten zugehörigen Kanten */ public List> getEdges(Node node) { - // TODO: Graph#getEdges(Node) - return new ArrayList<>(); + + return edges.stream().filter(x -> x.getNodeA().equals(node)).collect(Collectors.toList()); + } /** @@ -102,8 +105,11 @@ public class Graph { * @return Die Kante zwischen beiden Knoten oder null */ public Edge getEdge(Node nodeA, Node nodeB) { - // TODO: Graph#getEdge(Node, Node) - 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 { * @return Ein Knoten mit dem angegebenen Wert oder null */ public Node getNode(T value) { - // TODO: Graph#getNode(T) - return null; + + return nodes.stream() + .filter(x -> x.getValue().equals(value)) + .findFirst() + .orElse(null); + } /**