2018-07-30

2018-07-30  本文已影响0人  Xucooo

MazeFactory


项目介绍

本项目将完成如下两个功能:{

1.将给定迷宫的道路网格​,渲染为字符串输出

2.检查输入的有效性

道路网格(Road Grid)​ ​用来表示迷宫的道路,那么3 x 3的道路网格​可以对应一个7x7的渲染网格(Render Grid)​,如图所示:

道路网格有如下约束条件:

● 每一个cell只能够直接与相邻正南、正北、正东、正西的cell连通。不能够和其他的cell连通。

● 两个cell之间的连通一定是双向的。即cell(0,0)和cell(1,0)连通等价于cell(1,0)和cell(0,0)的连通。

}


软件架构说明

1.本项目采用抽象工厂模式实现,定义接口MazeFactory。实现类GridMazeFactory实现了网格迷宫工厂。

2.定义两个对象基类:网格基类Grid、迷宫接口Maze。Grid实现类包括MazeGrid(迷宫网格)和RoadMaze(道路网格),Maze实现类包括WrongMaze(错误迷宫)、GridMaze(网格迷宫)

3.定义记录位置的类:Position


使用说明

1.打开IDEA导入本项目工程,运行main方法

2.测试


测试用例

1.输入: 3 3

               101,12,1,1

   输出:Number out of range

2.输入: 3 3

               0,0, 1,1

  输出: Maze format error

上一篇下一篇

猜你喜欢

热点阅读