一道莫名其妙的Java面试题 谁看得懂?

来源:百度知道 编辑:UC知道 时间:2024/06/16 21:52:29
问函数在x=9999时 返回值多少?

int func(x){
int countx=0;
while(x){
countx++;
x=x&(x-1);
}
return countx;
}

这道题里x没有给指定数据类型 然后就算是指定为int 但是放在while中会报错,如果是boolean 又不能做减法运算 这题是不是出错了?

你这是什么语言的呀, 如果是javascript的吧 这个写法中的返回值就有问题int func((x),疑问js是弱类型语言,不应写这个的,若果是java的吧,那么你的方法又没有参数类型,还有while里也不可能只放一个整型

你这个不应该是Java吧,可能应该是C函数题吧,C语言中允许逻辑类型与数值类型之间进行运算,C中逻辑类型以0表示false,非0表示true,如果是Java无论如何都要报checked编译时错误,更不用说运行了。

必须是题出错了啊.
int func(x)?参数类型都没有?
如果是JAVASCRIPT我能接受...JAVA的那必须各种报错啊!

既然是面试题,就不用回答怎样做,举例就近的题例阐述就行了。(反正把自己搞漂亮点)