(基础)java中的数据类型

本文详细介绍了Java中的基本数据类型和引用数据类型,包括整数类型、浮点类型、字符类型和布尔类型等,并对比了使用Double和BigDecimal进行计算的区别。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

java中的数据类型

 

基本数据类型

数值型

整数类型(将根据类型分配不同的内存空间,开发中一般都使用int直接定义整型) 

byte(1个字节)   -128 至 127 

short(2个字节)  -32768 至 32767

int(4个字节)      -2147483648 至 2147483647   -->21亿半     1<<31)-1

long(8个字节)

浮点型

float(4个字节,单精度)  1.23f   必须用f来显示表明,什么时候用float呢

double(8个字节,双精度) 1.23 默认为double类型

字符型

char(2个字节,0-65535)  'a'   一个中文字符占2个字节,所以可以用char来表示

布尔型

boolean   true/false

 

引用数据类型

类     class

接口 interface

数组 [ ]

 

==============================================================

还有一些其它的类型,但不是基本数据类型

String

BigDecimal 

===============================================================

 

使用Double计算存在数据丢失问题

原因:浮点数不能准确的表示10进制数,只能以最接近的小数来表示,所以参与运算后结果会不准确

   浮点数一般用于科学运算

使用Double进行计算

public class Test {
	public static void main(String[] args) {

		double x = 3.3;
		double y = 2.4;
		double z = 0.9;
		double result = (x-y)/z;
		System.out.println(result);
		//结果:0.9999999999999999,存在误差
	}
}

 

 

使用BigDecimal进行计算(商业应用中推荐使用BigDecimal)

import java.math.BigDecimal;

public class Test {
	public static void main(String[] args) {

		BigDecimal x = BigDecimal.valueOf(3.3);
		BigDecimal y = BigDecimal.valueOf(2.4);
		BigDecimal z = BigDecimal.valueOf(0.1);
		BigDecimal result = x.subtract(y).divide(z);
		System.out.println(result);
		//结果为9,正确!
	}
}

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值