在java中输出的是NaN

publicclasstest{publicstaticvoidmain(Stringargs[]){doublea=(0/42)*Math.log(0/42)/Math... public class test {
public static void main(String args[]){
double a = (0/42)*Math.log(0/42)/Math.log(2);
System.out.println(a);
}
}
输出的为什么是nan而不是0.0?
展开
 我来答
kaixingui2012
2015-05-07 · TA获得超过4.2万个赞
知道大有可为答主
回答量:1.4万
采纳率:81%
帮助的人:6251万
展开全部
Math.log(0) 的结果是-Infinity (负无穷大)
所以 再与其它数运算,结果,就不是一个正常的数了,NaN  not a number!
追问
但是0乘以负无穷大还是0啊
追答
0乘以负无穷大还是0 ?  这个没有规定吧? 计算机可不是这么认为的!
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式