您必须提供a更大的可见性(或者将您的process 1和移至process 2第一个if块并消除a)。假设您想要选项 1:int a;if (condition a) { a = 1;} else { a = 2;}也可以写成三元int a = (condition a) ? 1 : 2;对于第二部分,不要忘记这==就是测试相等性的方式(不是=,这是赋值)if (a == 1) { process 1} else if (a == 2) { process 2}