java可视化,实现走迷宫小游戏(包含DFS自动寻找迷宫解

本文介绍了一个使用Java实现的可视化迷宫游戏,通过DFS算法预先寻找迷宫解。游戏界面由AlgoFrame类绘制,利用JFrame和JPanel进行交互。玩家可以控制角色移动,按下空格显示路径。还提供了主函数AlgoVisualizer,用于游戏逻辑和动画。文章附带作者的学习经历和Java开发者的学习资源分享。
摘要由CSDN通过智能技术生成

// 入口,第二行第一列

entranceX = 1;

entranceY = 0;

// 出口,倒数第二行最后一列

exitX = N - 2;

exitY = M - 1;

}

public int N(){ return N; }

public int M(){ return M; }

public int getEntranceX(){return entranceX;}

public int getEntranceY(){return entranceY;}

public int getExitX(){return exitX;}

public int getExitY(){return exitY;}

public char getMaze(int i, int j){

if (!inArea(i, j))

throw new IllegalArgumentException(“i or j is out of index in getMaze!”);

return maze[i][j];

}

// 判断点(x,y)是否在迷宫中

public boolean inArea(int x, int y){

return x >= 0 && x < N && y >= 0 && y < M;

}

// 控制台打印迷宫

public void print(){

System.out.println(N + " " + M);

for(int i = 0 ; i < N ; i ++){

for(int j = 0 ; j < M ; j ++)

System.out.print(maze[i][j]);

System.out.println();

}

return;

}

}

将迷宫的各个位置封装成一个类 Position.java,便于操作

public class Position {

private int x, y;

public Position(int x, int y, Position prev){

this.x = x;

this.y = y;

}

public Position(int x, int y){

this(x, y, null);

}

public int getX(){ return x; }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值