[TIL] 2020-11-24
プロセス
昨日のコードに加えて、順番にカウントするコードを実現しました.最初は1週間で豪快なイメージを作りたかったのですが、全く方向性が見つからなかったので、googlingで学習グループで自分で出した課題(?)参考にしたフレーム.
今日やったこと
class Player{
String name;
String stone;
public Player(String name, String stone)
{
this.name = name;
this.stone = stone;
}
public String getPlayerName()
{
return name;
}
public String getPlayerStone()
{
return stone;
}
}
デュエットゲームであるためPlayerクラスで2つのオブジェクトを生成することにし,this
生成者を利用する.public void put(int x, char y, Player player)
{
board[x][y-97] = player.getPlayerStone();
}
そして昨日作ったBoard
類の中で、石を入力できるput
メソッドを作りました.Scanner sc = new Scanner(System.in);
Player user = new Player("사용자", "●");
Player computer = new Player("컴퓨터", "○");
Board board = new Board();
メインクラスには、Scanner
、Player
クラスの2つのオブジェクトとBoard
クラスのジェネレータが宣言されています.void userTurn()
{
while(true)
{
play(board, user, computer);
System.out.println(user.getPlayerName()+ "가 둘 차례입니다.");
System.out.println("x좌표 입력:");
int x = sc.nextInt();
System.out.println("y좌표 입력:");
char y = sc.next().charAt(0);
if(board.board[x][y-97] == ".") {
System.out.println();
System.out.println(x+","+y+"에 수를 놓습니다.");
board.put(x, y, user);
break;
}
else {
System.out.println("둘 수 없는 자리입니다. 다시 입력해주세요.");
}
}
}
メインクラスで作成した座標を入力してカウントする方法.現在回転しているユーザ名をgetPlayerName()
メソッドで出力し、入力したx,y座標に石を配置し、if
演算子を使用して石を配置する位置が空であれば石を配置し、空でなければエラー文を出力して再配置します.void run()
{
while(true)
{
userTurn();
comTurn();
}
}
run
メソッドを作成し、順番に動作させます.今日実装されたコードは正常に動作しています.石を繰り返し位置に置くと、エラーメッセージの出力と再配置も成功します.ゲームボードは二重配列と発表されたが、配列の大きさも間違いなく成功したようだ.
TIL
昨日のコードに追加されたものは正常に動作していますが、特に
~~~Turn
の方法は汚いようです.他の人が見てもきれいに整理して、重複した修正はありません.谷歌霊に助けられたが、谷歌霊の実力も見たことがある.コードを写さない場合は、適切に参照して完了してください.今は最も重要な勝利条件のアルゴリズムを制定しなければならない.Reference
この問題について([TIL] 2020-11-24), 我々は、より多くの情報をここで見つけました https://velog.io/@cjhlsb/TIL-2020-11-24テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol