簡體   English   中英

打印10 x 10坐標網格

[英]Print 10 x 10 co-ordinates grid

我正在打印一個從0-9的列和0-9的行顯示的網格。

我想將其顯示為0-9的列和A-J的行,但是不確定如何在循環中使用字符而不是Integer?

public class BattleshipGame {

private char[][] playerBoard;   
private char[][] compBoard;     
private final static int boardSize = 10;
private String input, shipType, shipDirection = ""; 
public static String name;      
private int shipRowLoc, shipColLoc; 
private boolean allowed, random = false, showShips = false;
private MoveType moveType;
private ArrayList<Battleships> enemyShips = new ArrayList<Battleships>();

Scanner userinput = new Scanner(System.in);

public BattleshipGame() {
    playerBoard = new char[boardSize][boardSize];
    compBoard = new char[boardSize][boardSize];
    initializeBoard();  
    placeShip();    
}

public void initializeBoard() {
    for (int i = 0; i < boardSize; i++)
        for (int j = 0; j < boardSize; j++){
            playerBoard[i][j] = '~';
            compBoard[i][j] = '~';
    }
}

您有幾種選擇,可以使用

for (char ch = 'A'; ch <= 'J'; ch++)

或類似的東西

for (int j = 0; j < 10; j++) {
  char ch = (char) ('A' + j);

要從int映射字符A - J ,您可能只需在它們的代碼點索引它們即可。

例如, A65

因此System.out.println((char)65)將打印A

將其從09遞增索引,您將得到從AJ字符。

暫無
暫無

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

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