CREATE TABLE `data_facts` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`network_asset_code` varchar(255) NOT NULL DEFAULT '',
`temperature` double(255,0) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=43 DEFAULT CHARSET=latin1;
嗯,我正在做的事情显然不起作用,我已经搜索了很长时间如何做到这一点,但我不能(抱歉我无法让代码片段工作) 如何更改公共/私有变量的值? (它将用于重置游戏
答案 0 :(得分:2)
问题是你的reset
方法声明隐藏公共字段的新局部变量。移除char
并将,
替换为;
!
static public void reset()
{
box1 = ' ';
box2 = ' ';
box3 = ' ';
box4 = ' ';
box5 = ' ';
box6 = ' ';
box7 = ' ';
box8 = ' ';
box9 = ' ';
bool isWin = false;
int line = 1, nrJogada = 1;
ciclo();
}
当isWin
方法终止时,其他本地变量line
,nrJogada
和reset
将会丢失,正如@Rob指出的那样。
同样在这里,数组会更方便。
public static char[] box = new char[8] {' ', ' ', ' ', ' ', ' ', ' ', ' ', ' '};
public static char input2;
private static bool isWin = false;
private static int line = 1, nrJogada = 1;
static public void reset()
{
for (int i = 0; i < box.Length; i++) {
box[i] = ' ';
}
isWin = false;
line = 1; nrJogada = 1;
ciclo();
}
注意,在变量名之前写入类型名称,声明一个新变量。