这里的第一篇文章,可能不会是我的最后一篇。
我有一个主要作业到期,我们得到了一个任务和代码来配合它。该任务基本上是重新创建pacman。我坚持使用它,因为当删除所有标记时,它意味着自动加载新的“地图/水平”。 它是用java编写的,如果有帮助的话,我们使用Greenfoot作为应用程序/编译器。
public final char[][] LEVEL_1 = {
{'#','#','#','#','#','#','#','#','#','#','#','#','#','#','#','#','#','#','#'},
{'#','.','.','.','.','.','.','.','.','#','.','.','.','.','.','.','.','.','#'},
{'#','$','#','#','.','#','#','#','.','#','.','#','#','#','.','#','#','$','#'},
{'#','.','#','#','.','#','#','#','.','#','.','#','#','#','.','#','#','.','#'},
{'#','.','.','.','.','.','.','.','.','.','.','.','.','.','.','.','.','.','#'},
{'#','.','#','#','.','#','.','#','#','#','#','#','.','#','.','#','#','.','#'},
{'#','.','.','.','.','#','.','.','.','#','.','.','.','#','.','.','.','.','#'},
{'#','#','#','#','.','#','#','#',' ','#',' ','#','#','#','.','#','#','#','#'},
{' ',' ',' ','#','.','#',' ',' ',' ',' ',' ',' ',' ','#','.','#',' ',' ',' '},
{'#','#','#','#','.','#',' ','#','#','|','#','#',' ','#','.','#','#','#','#'},
{' ',' ',' ',' ','.',' ',' ','#','%','?','%','#',' ',' ','.',' ',' ',' ',' '},
{'#','#','#','#','.','#',' ','#','#','#','#','#',' ','#','.','#','#','#','#'},
{' ',' ',' ','#','.','#',' ',' ',' ',' ',' ',' ',' ','#','.','#',' ',' ',' '},
{'#','#','#','#','.','#',' ','#','#','#','#','#',' ','#','.','#','#','#','#'},
{'#','.','.','.','.','.','.','.','.','#','.','.','.','.','.','.','.','.','#'},
{'#','.','#','#','.','#','#','#','.','#','.','#','#','#','.','#','#','.','#'},
{'#','$','.','#','.','.','.','.','.','@','.','.','.','.','.','#','.','$','#'},
{'#','#','.','#','.','#','.','#','#','#','#','#','.','#','.','#','.','#','#'},
{'#','.','.','.','.','#','.','.','.','#','.','.','.','#','.','.','.','.','#'},
{'#','.','#','#','#','#','#','#','.','#','.','#','#','#','#','#','#','.','#'},
{'#','.','.','.','.','.','.','.','.','.','.','.','.','.','.','.','.','.','#'},
{'#','#','#','#','#','#','#','#','#','#','#','#','#','#','#','#','#','#','#'}
},
LEVEL_2 = {
{'#','#','#','#','#','#','#','#','#','#','#','#','#','#','#','#','#','#','#'},
{'#','#','#','#','#','#','.','.','.','#','.','.','.','.','.','.','.','.','#'},
{'#','$','#','#','.','#','#','#','.','#','.','#','#','#','.','#','#','$','#'},
{'#','.','#','#','.','#','#','#','.','#','.','#','#','#','.','#','#','.','#'},
{'#','.','.','.','.','.','.','.','.','.','.','.','.','.','.','.','.','.','#'},
{'#','.','#','#','.','#','.','#','#','#','#','#','.','#','.','#','#','.','#'},
{'#','.','.','.','.','#','.','.','.','#','.','.','.','#','.','.','.','.','#'},
{'#','#','#','#','.','#','#','#',' ','#',' ','#','#','#','.','#','#','#','#'},
{' ',' ',' ','#','.','#',' ',' ',' ',' ',' ',' ',' ','#','.','#',' ',' ',' '},
{'#','#','#','#','.','#',' ','#','#','|','#','#',' ','#','.','#','#','#','#'},
{' ',' ',' ',' ','.',' ',' ','#','%','?','%','#',' ',' ','.',' ',' ',' ',' '},
{'#','#','#','#','.','#',' ','#','#','#','#','#',' ','#','.','#','#','#','#'},
{' ',' ',' ','#','.','#',' ',' ',' ',' ',' ',' ',' ','#','.','#',' ',' ',' '},
{'#','#','#','#','.','#',' ','#','#','#','#','#',' ','#','.','#','#','#','#'},
{'#','.','.','.','.','.','.','.','.','#','.','.','.','.','.','.','.','.','#'},
{'#','.','#','#','.','#','#','#','.','#','.','#','#','#','.','#','#','.','#'},
{'#','$','.','#','.','.','.','.','.','@','.','.','.','.','.','#','.','$','#'},
{'#','#','.','#','.','#','.','#','#','#','#','#','.','#','.','#','.','#','#'},
{'#','.','.','.','.','#','.','.','.','#','.','.','.','#','.','.','.','.','#'},
{'#','.','#','#','#','#','#','#','.','#','.','#','#','#','#','#','#','.','#'},
{'#','.','.','.','.','.','.','.','.','.','.','.','.','.','.','.','#','#','#'},
{'#','#','#','#','#','#','#','#','#','#','#','#','#','#','#','#','#','#','#'}
};
这就是设计关卡的方式(LEVEL_2没有像我想要的那样改变,并且在努力之前完成切换),据我所知它是一个二维char数组。
有一个预先编写的方法advanceToLevel(char[][])
,需要输入数组的名称,在这种情况下,当我触发地图更改时,我想要选择LEVEL_2,但我不确定如何使用它选择LEVEL_2或我选择创建的任何其他内容。
我尝试的任何东西都不断抛出它无法将字符串转换为char [] []。
任何帮助都将不胜感激。
答案 0 :(得分:0)
错误让它听起来像是在写
advanceToLevel("LEVEL_2")
这不是对变量LEVEL_2的引用,而是填充内容“LEVEL_2”的String。
似乎您可能会对Java语法和OOP原则的一些基础知识感到困惑;一个好的启动者将是关于变量范围的复习 - https://docs.oracle.com/javase/tutorial/java/javaOO/variables.html
我会看一下这个页面以及java教程中看起来令人困惑的其他任何内容。如果你没有掌握基础知识,就很难做出有趣的事情,比如编写Pacman。