我正在尝试在java中声明一个数组作为tic-tac-toe游戏的一部分,但是当我这样做时出现语法错误:
package tictactoe;
import java.util.Random;
import java.util.Scanner;
public String a[] = new String[9];
a[0]="";
public class Board {
我认为这是声明数组的正确方法,我看到的所有示例都证实了这一点,为什么我会出现语法错误?
答案 0 :(得分:3)
您需要将数组的声明放在类中。
您还需要将数组的赋值放在方法中(在类中)。您也可以将赋值放在构造函数中。
所以你的代码看起来像这样:
package tictactoe;
import java.util.Random;
import java.util.Scanner;
public class Board {
public String[] a = new String[9];
public Board() {
a[0] = "";
}
}
答案 1 :(得分:2)
你想要在课堂体外发现变量,这是不正确的。 你应该在类中移动数组定义并在类构造函数中启动它(例如)。
public class Board {
public String a[] = new String[9];
public Board() {
a[0] = "";
}
}
答案 2 :(得分:1)
在java中,一切都必须在一个类中。你不能把它留在类之外并在构造函数中初始化它以使它看起来更干净。
public class Board {
public String a[] = new String[9];
Board(){
a[0]=" ";
}
}
如果你想看到初始化的值,那么
public class Board {
public static String a[] = new String[9];
Board(){
a[0]=" ";
}
public static void main(String []args){
System.out.println(" Initialially :"+a[0]);
}
}
答案 3 :(得分:1)
Java中的所有东西(除了import语句)必须都在一个类中。然后,您需要编写要在方法内执行的代码。你在类之外声明一个数组没有任何意义,因为这样它就不是任何类的成员。
Java不是脚本语言。你不能在课外写代码。
package tictactoe;
import java.util.Random;
import java.util.Scanner;
public class Board {
public String a[] = new String[9];
//methods here
}