小编Bee*_*eep的帖子

Java中的国际象棋位板实现

我正在寻找创建一个基本的国际象棋(或失败,跳棋/草稿)引擎.在研究了这个主题之后,我非常有信心想要使用一系列的位板.我在基本层面理解这个概念,但是我在用Java表示它们时遇到了麻烦.

我试图将棋盘的白色部分表示为1,将其他所有部分表示为0,使用long:

long whitePieces = 0000000000000000000000000000000000000000000000001111111111111111L;
Run Code Online (Sandbox Code Playgroud)

但是当我打印出来时,我得到以下46位:

System.out.println(Long.toBinaryString(whitePieces));
1001001001001001001001001001001001001001001001
Run Code Online (Sandbox Code Playgroud)

是什么导致了这个结果?我确信这里有一些我从根本上误解的东西; 如果有人能指出我正确的方向,我将非常感激.

java bitboard

5
推荐指数
1
解决办法
2654
查看次数

标签 统计

bitboard ×1

java ×1