knrt.net
当前位置:首页 >> 关于jAvA中0.0/0.0的问题 >>

关于jAvA中0.0/0.0的问题

如果是int的话 0/0肯定有异常,但是float或double不会。 原因要讲吗? 0不能当分母,所以除以它会出异常; 0.0在内存里面和0可不同,所以它为分母时应该不会有异常,但是结果非数字。有点跟Integer.MAX_VALUE + 1 的道理差不多吧。

java.lang.ArithmeticException 除以0都会报这个错误

程序中的每个除数,都要处理 其为0的可能性.可以强制改为一个合法的数,或者函数直接返回.也可返回一个自己的异常. (1):double d=0.0 其实d的值只是无线接近于0而已。 (2):int iWidth = m_rectmin.Width(); if(iWidth==0) iWidth = 1; (3)...

没啥意思 就是定义了一个浮点类型f1=0.0 ---------------- float型 内存分配4个字节,占32位,范围从10^-38到10^38 和 -10^38到-10^-38 例float x=123.456f,y=2e20f; float型定义的数据末尾必须有"f"或"F",为了和double区别

2 是整型 3 也是整形 所以 2/3 的结果是整形 所以是 0 public class tt { public static void main(String[] args){ float xb = 0; xb = 2/3; System.out.println(xb); xb = (float)2/3; System.out.println(xb); } } 前面加个 float 就行了

// 第一个0代表横坐标// 第二个0代表纵坐标 g.clearRect(0,0, getWidth(), getHeight()); // 10代表横坐标,20代表纵坐标 g.drawString("小应用程序,你好!",10,20); 这2个方法是这样规定的: 定义和用法clearRect() 方法删除一个画布的矩形区...

2和3都是整数,2/3是整数除法,得到的商也是整数。要得到浮点数结果,只要被除数和除数中有一个是浮点数就行。比如2.0/3

恩,因为你的class Book{}没有构造方法,所以java默认把你的float price,设置成0.0,String Isbought;设置成null,所以你的输出结果是0.0 null。 如果你的这个方法public book(){ price=1.1; Isbought="shi"; } 的方法名字的首字母改成大写的B,...

首先java在基本类型计算中高精度会丢失 如果涉及到高精度 需要装换成import java.math.BigDecimal;import java.math.BigInteger;这两个类 代码例子 // System.out.println(0.0+30/10*0.1); BigDecimal b1 = new BigDecimal(Double.toString(0.0)...

是计算机是用二进制运算,而二进制无法表达十进制浮点数,故运算错误。

网站首页 | 网站地图
All rights reserved Powered by www.knrt.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com