这是我在别人的程序里看到的形状数组,我想问一下为什么用16进制来表示,而且四个元素就表示一个形状了。
public final static int[][] STYLES={
{0x0f00, 0x4444, 0x0f00, 0x4444}, //长条
{0x04e0, 0x0464, 0x00e4, 0x04c4}, //T形
{0x4620, 0x6c00, 0x4620, 0x6c00}, //反Z
{0x2640, 0xc600, 0x2640, 0xc600}, //Z
{0x6220, 0x1700, 0x2230, 0x0740}, //7
{0x6440, 0x0e20, 0x44c0, 0x8e00}, //反7
{0x0660, 0x0660, 0x0660, 0x0660}, //方块
}; [java]
public final static int[][] STYLES={
{0x0f00, 0x4444, 0x0f00, 0x4444}, //长条
{0x04e0, 0x0464, 0x00e4, 0x04c4}, //T形
{0x4620, 0x6c00, 0x4620, 0x6c00}, //反Z
{0x2640, 0xc600, 0x2640, 0xc600}, //Z
{0x6220, 0x1700, 0x2230, 0x0740}, //7
{0x6440, 0x0e20, 0x44c0, 0x8e00}, //反7
{0x0660, 0x0660, 0x0660, 0x0660}, //方块
}; [java]
首先 你要知道每个图形可以转4次 然后 你要知道f的二进制表示1111,4的二进制表示0100
所以把0f00竖起来就是
0: 0000
f: 1111
0: 0000
0: 00004: 0100
4: 0100
4: 0100
4: 0100