我想知道是否可以在条件运算符中为变量赋值,如下所示:
if((int v = someMethod()) != 0) return v;
在Java中有什么方法可以做到这一点吗?因为我知道这在while条件下是可能的,但我不确定是if语句做错了还是不可能。
发布于 2013-04-22 21:42:53
变量可以赋值,但不能在条件语句中声明:
int v;
if((v = someMethod()) != 0) return true;发布于 2013-04-22 21:47:17
您可以在if内赋值,但不能声明
试试这个:
int v; // separate declaration
if((v = someMethod()) != 0) return true;发布于 2013-04-22 21:43:39
赋值返回赋值的左侧。所以:是的。这是可能的。但是,您需要在外部声明变量:
int v = 1;
if((v = someMethod()) != 0) {
System.err.println(v);
}https://stackoverflow.com/questions/16148580
复制相似问题