相关疑难解决方法(0)

41
推荐指数
7
解决办法
7万
查看次数

`if(x = 0)`是否是Java可编译的

Scott Ambler在他的书" Java编码标准"中说,我很感兴趣,并引用:

2.5.2在比较的左侧放置常数

所以他建议使用

if ( 1 == something ) {…}    
if ( 0 = x ) { …}
Run Code Online (Sandbox Code Playgroud)

代替

if ( something == 1 ) {…}    
if ( x = 0 ) { …}  
Run Code Online (Sandbox Code Playgroud)

我的天啊 !!!

他通过这样说来激励这一点:

"虽然它们都是等价的,至少在第一次检查时,左边的代码编译而右边的代码没有."

我知道(当我开始编写Java时,Java 14已经在使用中),这两种情况都会引发编译器错误.

从Ambler语句开始,我试图搜索Java语法if ( x = 0 );是否可编译.

你能帮我解决这个问题吗?我搜索了不同版本的JSR,我没有发现任何可能表明该代码在其他java版本上进行编译的更改.

我使用目标和源1.2编译Jre7编译器仍然会引发编译器错误.不幸的是我没有Java 1.1编译器:9

我的问题是:

if(x = 0); 是否可与旧版Java编译器兼容?

java convention compilation version conditional-statements

4
推荐指数
2
解决办法
2121
查看次数