我试图在命令提示板上创建一个可打印的,以便设法在CMD中创建一个TicTacToe游戏。 虽然,当我为我的电路板和我的电池创建课程时, Java在我的print和println下抛出一个错误,说我:
symbol: method println() -or- method print() .etc...
location: class board
error: cannot find symbol
我的代码是什么问题? 这是我的整个.java文件:
我只想编译,而不是运行
import acm.program.*;
public class board {
private static final int ROWS=3;
private static final int COLS=3;
private int[][] board1 = new int[ROWS][COLS];
//constructor
public board() {
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
board1[i][j]=0;
printBoard();
}
}
}
public void printBoard() {
for(int row =0; row<ROWS; row++) {
for (int col=0; col<COLS; col++) {
printCell(board1[row][col]);
if (col != (COLS-1)) {
print("|"); // print vertical partition
}
}
println();
if (row !=(ROWS-1)) {
println("-----------");
}
}
println();
}
public void printCell(int content) {
if (content == 0) {print(" ");}
}
}
它只是通过用system.out替换print()和println()来编译。 但这太奇怪了。 ACM包中包含println()和print()等方法,以使其更容易。但现在它是固定的。谢谢。
编辑2:为了使用print()和println()进行编译,我需要:“公共类板扩展程序”而不仅仅是“公共类板”
答案 0 :(得分:3)
尝试用
替换println()
和print()
System.out.print();
System.out.println();
如果您想使用ACM,则必须在类路径中包含acm.jar
文件,并且必须在Program
类中扩展board
课程,例如:class board extends Program{}
另见:
答案 1 :(得分:1)
以下是更正后的代码:
public class board {
private static final int ROWS=3;
private static final int COLS=3;
private int[][] board1 = new int[ROWS][COLS];
//constructor
public board() {
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
board1[i][j]=0;
printBoard();
}
}
}
public void printBoard(){
for(int row =0; row<ROWS; row++){
for (int col=0; col<COLS; col++){
printCell(board1[row][col]);
if (col != (COLS-1)) {
System.out.print("|"); // print vertical partition
}
}
System.out.println("");
if (row !=(ROWS-1)) {
System.out.println("-----------");
}
}
System.out.println();
}
public void printCell(int content) {
if (content == 0) {System.out.print(" ");}
}
}
你刚刚错过了一些打印语句的“System.out”调用。
答案 2 :(得分:0)