这是我得到的编译器错误:
JogarLightmare.java:105:错误:预期
public static void imprimeCaminho(int posMonius, int posOutro, int linhas, int colunas, int fim){
^
JogarLightmare.java:105:错误:不是声明
public static void imprimeCaminho(int posMonius, int posOutro, int linhas, int colunas, int fim){
^
JogarLightmare.java:105:错误:';'预期
public static void imprimeCaminho(int posMonius, int posOutro, int linhas, int colunas, int fim){
^
JogarLightmare.java:105:错误:预期
public static void imprimeCaminho(int posMonius, int posOutro, int linhas, int colunas, int fim){
^
JogarLightmare.java:105:错误:不是声明
public static void imprimeCaminho(int posMonius, int posOutro, int linhas, int colunas, int fim){
^
JogarLightmare.java:105:错误:';'预期
public static void imprimeCaminho(int posMonius, int posOutro, int linhas, int colunas, int fim){
这是有问题的方法。我已经验证了{}但我不知道问题出在哪里:
public static void imprimeCaminho(int posMonius, int posOutro, int linhas, int colunas, int fim){
char z = '_';
char m = 'M';
char o = 'O';
char a = '@';
if(fim == 2){
o = '*';
}
StringBuilder caminho = new StringBuilder(int colunas);
for(int j = 1; j <= linhas; j = j + 1){
for(int i = 1; i <= colunas; i = i + 1){
if(i != posMonius && i != posOutro){
caminho.append(z);
}else{
if(i == posMonius && i == posOutro){
caminho.append(a);
}else{
if(i == posMonius){
caminho.append(m);
}else{
caminho.append(o);
}
}
}
}
if(j % 2 == 0){
System.out.println(caminho.reverse().toString());
}else{
System.out.println(caminho.toString());
}
}
}
答案 0 :(得分:1)
替换此行:
StringBuilder caminho = new StringBuilder(int colunas);
这一行:
StringBuilder caminho = new StringBuilder(colunas);
问题是语法new StringBuilder(int colunas);
无效。 int colunas
通常用于声明int
类型的变量,但是在这里你接受这个变量作为一个参数,它不需要再次指定类型。变量本身已在此行中声明:
public static void imprimeCaminho(int posMonius, int posOutro, int linhas, int colunas, int fim){