簡體   English   中英

println錯誤:位置類,方法println()

[英]Error wtih println: Location class,method println()

我試圖在命令提示符板上創建可打印的內容,以便設法在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()進行編譯,需要具有:“公共類板擴展程序”,而不僅僅是“公共類板”

嘗試將println()print()替換為

System.out.print();
System.out.println();

如果要使用ACM,則必須在類路徑中包含acm.jar文件,並且必須在board級中擴展Program類,例如: class board extends Program{} acm.jar class board extends 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)) {
                   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”調用。

通過更改println()

System.out.print(); or   
System.out.println();

更多

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM