导航:首页 > 编程语言 > javadouble空

javadouble空

发布时间:2022-08-12 05:27:55

1. java中变量a是double型的。怎么判断a是否为null

Double a = Double.NaN;

//第一种 前两种要求类型是Double即包装类
System.out.println(a.equals(Double.NaN));

//第二种
System.out.println(a.equals(0.0d / 0.0));

//第三种 使用Double的静态方法,方法实现就是第四种 类型无要求
System.out.println(Double.isNaN(a));

//第四种 利用NaN自己和自己不相等的特性,

//要求类型必须是double,不能是包装类,否则结果是false

//因为包装类是引用类型,比较的!=是地址的比较而不是值的比较。

double b = Double.NaN;
System.out.println(b != b);



(1)javadouble空扩展阅读:

实际开发中常常遇到这种需求:double类型的数据如果为空,就展示空字符串;如果为0,就展示0。

一般是这样做,新建一个model,和数据库里的字段,数据类型一一对应。然后把数据库里的数据取到这个model的集合里,然后进行进一步处理。

这时候就有个问题,比如double类型会默认初始化为0,这样就无法区分数据库里是0值还是null。

解决方法一

再从数据库中获取你所需要的数据的条数。这样如果值为0且数据条数小于等于0,这种情况就是空值;否则就是0.

解决方法二

可空类型。double,有0值就是0,没有值就是null。

2. java double类型

double类型直接进行运算会出现精度问题,可先转换为字符串之后再进行运算。
import java.math.BigDecimal;
public class Arith {
// 默认除法运算精度
private static final int DEF_DIV_SCALE = 10;

// 这个类不能实例化
private Arith() {
}
public static double add(double v1, double v2)
{
BigDecimal b1 = new
BigDecimal(Double.toString(v1));
BigDecimal b2 = new
BigDecimal(Double.toString(v2));
return
b1.add(b2).doubleValue();
}

public static double sub(double v1, double v2)
{
BigDecimal b1 = new
BigDecimal(Double.toString(v1));
BigDecimal b2 = new
BigDecimal(Double.toString(v2));
return
b1.subtract(b2).doubleValue();
}
public static double mul(double v1, double v2)
{
BigDecimal b1 = new
BigDecimal(Double.toString(v1));
BigDecimal b2 = new
BigDecimal(Double.toString(v2));
return
b1.multiply(b2).doubleValue();
}
public static double div(double v1, double v2) {
return
div(v1, v2, DEF_DIV_SCALE);
}
public static double div(double v1, double v2, int scale)
{
if (scale < 0) {
throw new
IllegalArgumentException(
"The
scale must be a
positive integer or
zero");
}
BigDecimal b1 = new
BigDecimal(Double.toString(v1));
BigDecimal b2 = new
BigDecimal(Double.toString(v2));
return b1.divide(b2, scale,
BigDecimal.ROUND_HALF_UP).doubleValue();
}
public static double round(double v, int scale) {
if
(scale < 0) {
throw new
IllegalArgumentException(
"The
scale must be a
positive integer or
zero");
}
BigDecimal b = new
BigDecimal(Double.toString(v));
BigDecimal one = new
BigDecimal("1");
return b.divide(one, scale,
BigDecimal.ROUND_HALF_UP).doubleValue();
}
}
public class test {
public static void main(String[] args)
{
double d1=0.2;
double d2=0.1;
double
d3=d1+d2;
System.out.println(Arith.add(d1,
d2));
System.out.println(Arith.sub(d1,
d2));
System.out.println(d3);
}
}

3. Java基础double

因为你用的是double类型,这个类型很精确,一般用的是float,
把double d = a + b +c;改成
float d = (float)(a + b +c);就行了

4. java中double型小数位数问题

o
~!

也再学java
不过我看的比较快
这也这要是你的表达式的问题
如果你自己不加其他的限制条件的话就是默认的】
首先你要知道一个double型,最多可以表达15位小数。
像你的第一个本身就是只有一位小数,它不会自己去添加0的
而后面的却是除不尽的,,但是double型的最多也只有15~16位,所以也就是保留15~16位了~!
以后有空可以多交流一下
上面的说的对,浮点小数都不能很精确的表达一个小数

5. Java里怎么将double保留三位小数,不足的用空格填充(不出现小数点)

DecimalFormat df = new DecimalFormat("0.000");
df.format(12.3456);
这个的结果是12.346,四舍五入,不足位的用0 填充,比如df.format(1.23)结果是1.230。

6. java 怎样去掉double的空格

double是一个类
而double是一种基本数据类型
创建一个类的对象需要使用new运算符
不知道楼主这么做的意义在何?
double
d=a;
double
d=new
double(d);
这两个是对象和变量的区别

7. java中Double类型报空指针了怎么办

怎么办!
那要看你这边需求了,对这个Double类型的数据是否需要处理,如果是个无关紧要的数字那就记录个日志,如果是代表钱什么的 需要给用户提示不能为空。
你这个问题问的没头没脑的。。。也不知道怎么答

8. java中float和double的取值范围是什么

float:4字节(32bit),IEEE 754. 取值范围:

[-3.40282346638528860e+38 , -1.40129846432481707e-45] ∪ [1.40129846432481707e-45 ~ 3.40282346638528860e+38] 。

double: 8字节(64bit) ,IEEE 754. 取值范围:

[-1.79769313486231570e+308,-4.94065645841246544e-324] ∪ [4.94065645841246544e-324,1.79769313486231570e+308] 。

(8)javadouble空扩展阅读

基本数据类型的特点,位数,最大值和最小值。

1、

基本类型:short 二进制位数:16

包装类:java.lang.Short

最小值:Short.MIN_VALUE=-32768 (-2的15此方)

最大值:Short.MAX_VALUE=32767 (2的15次方-1)

2、

基本类型:int 二进制位数:32

包装类:java.lang.Integer

最小值:Integer.MIN_VALUE= -2147483648 (-2的31次方)

最大值:Integer.MAX_VALUE= 2147483647 (2的31次方-1)

3、

基本类型:long 二进制位数:64

包装类:java.lang.Long

最小值:Long.MIN_VALUE=-9223372036854775808 (-2的63次方)

最大值:Long.MAX_VALUE=9223372036854775807 (2的63次方-1)

4、

基本类型:float 二进制位数:32

包装类:java.lang.Float

最小值:Float.MIN_VALUE=1.4E-45 (2的-149次方)

最大值:Float.MAX_VALUE=3.4028235E38 (2的128次方-1)

5、

基本类型:double 二进制位数:64

包装类:java.lang.Double

最小值:Double.MIN_VALUE=4.9E-324 (2的-1074次方)

最大值:Double.MAX_VALUE=1.7976931348623157E308 (2的1024次方-1)

9. Java泛型 Double

packagecn.org.ibiology;

classpointing<T>{
privateTx;
privateTy;

//你这里指定返回的结果为空(void),你把这里的void改成double就能解决问题
publicvoidsetX(Tx){
this.x=x;
}

//你这里指定返回的结果为空(void),你把这里的void改成double就能解决问题
publicvoidsetY(Ty){
this.y=y;
}

publicTgetX(){
returnx;
}

publicTgetY(){
returny;
}
}

publicclassFanxing{

publicstaticvoidmain(String[]args){
pointing<Double>point=newpointing<Double>();


//这里执行set以后,你是把结果返回给了两个变量x和y,也就是说执行set是需要返回结果的,但是你上面对set的声明指定不返回结果,所以矛盾了
doublex=point.setX(23.2);
doubley=point.setY(22.2);

System.out.println(x);
System.out.println(y);
}

}



有什么问题你都可以追问我,没问题,望采纳,谢谢

10. java double是什么类型

double: 64位双精度浮点数 ,范围10^-308~10^308和-10^-308~-10^308
与之比较对应的是float,32位单精度浮点数 ,范围10^-38~10^38和-10^-38~-10^38
对我们这种程序员来说,能用float就不用double,因为float比double运算速度快、占用资源(内存)少。

阅读全文

与javadouble空相关的资料

热点内容
怎么为电脑加密 浏览:58
服务器出现差错是什么意思 浏览:616
苹果app移到商店里怎么删掉 浏览:254
phpjsphtml 浏览:63
吃鸡手机国际服服务器超时怎么办 浏览:68
努比亚Z5无命令 浏览:641
展示网站云服务器 浏览:870
代码混淆器php 浏览:365
贝恩pdf 浏览:207
丙烯pdf 浏览:367
云服务器华硕 浏览:711
sublime3运行python 浏览:188
怎么把安卓视频传到苹果上面 浏览:81
手机拍鬼片用什么app 浏览:640
爬山虎app是干什么用的 浏览:506
有哪些写给程序员的歌 浏览:49
成都市命令 浏览:993
建立系列文件夹 浏览:984
苹果开机白屏带文件夹问号 浏览:734
体验服为什么服务器会关闭 浏览:41