javaDSL简单实现示例分享

时间:2021-07-19 23:34:02
代码如下:

package com.vd.dsl;
import static com.vd.dsl.GraphBuilder.*;
public class Main {
 public static void main(String[] args) {
  Graph().edge().from("a").to("b").weigth(20.0).edge().from("b").to("c").weigth(10.0).printGraph();
 }
}

 

 

复制代码代码如下:

package com.vd.dsl;

 

public class Edge {
 private Vertex fromVertex;
 private Vertex toVertex;
 public Vertex getFromVertex() {
  return fromVertex;
 }
 public void setFromVertex(Vertex fromVertex) {
  this.fromVertex = fromVertex;
 }
 public Vertex getToVertex() {
  return toVertex;
 }
 public void setToVertex(Vertex toVertex) {
  this.toVertex = toVertex;
 }
 public Double getWeight() {
  return weight;
 }
 public void setWeight(Double weight) {
  this.weight = weight;
 }
 private Double weight;
 public Edge() {

 }
 @Override
 public String toString() {
  return fromVertex.getLabel()+ " to "+
   toVertex.getLabel() + "with weigth "+
   this.weight;
 }
}