我的项目中有以下代码:
private void initCS() {
CarsMakerData cmd = NetWorkData.data[key - 1];
if (cmd.portClient != 0);
{
System.out.println(cmd.portClient);
client = new CarsMakerClient(this, cmd.ipClient, cmd.portClient);
client.start();
}
}
Run Code Online (Sandbox Code Playgroud)
我得到以下输出:
770
0
0
0
Run Code Online (Sandbox Code Playgroud)
我期待770但不是0 ......
该数组NetWorkData.data在静态构造函数中初始化.key在函数的所有四次调用中都是唯一的.
任何人都可以解释为什么我得到那些零?这可能是因为多线程吗?
(我在Linux系统上使用eclipse,使用OpenJDK 2.4.7)
if (cmd.portClient != 0);
Run Code Online (Sandbox Code Playgroud)
删除分号.
分号作为空语句.上面的行意味着:"如果cmd.portClient不是零,什么都不做".它之间{和}之后的块与if语句无关,并且将始终执行.
| 归档时间: |
|
| 查看次数: |
39 次 |
| 最近记录: |