[TIL] 2020-11-23


プロジェクトを開始します。


正直に言うと、誰にとっても簡単なコードであり、プロジェクトと言えるかもしれません.しかし、来年のjavaプログラミングの授業を再開する前に、少なくとも1つのプロジェクトを完成することにしました.最初はチェスゲームをしたいと思っていましたが、私は本当に考えられませんでした.だから、よく知っているルール「五子棋プロジェクト」から始めたいと思っていました.

n/a.ターゲット


swingはまだ未熟で、GUIではなくコンソールウィンドウで実現したいと思っています.x,y座標値を順番に入力し,石を切り落とし,上下左右に5つの石をつなぎ,勝つアルゴリズムを作成する.
完成する前に、私は1週間の時間を手配して、毎日思考と入力のコードを記録します.

きろく


まずは一番大切なベースのグラビアから作ることにしました.2 D配列を用いて,x,y座標ごとに1枚の板を点け,凹版の最左側と最下部に数字とアルファベットを出力し,x,y座標を区別できる.このグラビアは,ユーザ歌手ごとにこのプロセスを出力する必要があるため,生成者を個別に出力する方法を作成した.
class Board{
	private String[][] board;
	public Board()
	{
		board = new String[19][19];
		for(int i=0;i<board.length;i++)
		{
			for(int j=0;j<board.length;j++)
			{
				board[i][j] = ".";
			}
		}
	}
	public void print()
	{
		for(int i=0;i<board.length;i++)
		{
			System.out.print(i<10?i+" ":i);  //삼항연산자를 사용해서 x좌표 출력 i<10이면 한칸 띄워줌
			for(int j=0;j<board.length;j++)
			{
				System.out.print(board[i][j]+ " ");
			}
			System.out.println();
		}
		System.out.print("  ");
		for(int i=0;i<board.length;i++)
		{
			System.out.print((char)('a'+i)+" ");  //y좌표 출력
		}
	}
}
System.out.print(i<10?i+" ":i)
この行の3つの演算子コードはif-else文を書く必要がなく、条件式を使用することができます.
i変数が10より小さいとスペースがあり、10より大きいと数字で出力されます.
x座標値をより簡潔に表示するために.
-実行結果-