Java中的数据类型详解——float类型

本文详细探讨了Java编程语言中的浮点类型float,包括其精度、取值范围、使用示例以及与double类型的比较,帮助开发者更好地理解和运用float类型。

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

FloatTest01.java

/*
	关于java语言中的浮点型数据
		浮点型包括:
			float		4个字节
			double		8个字节

		float是单精度
		double是双精度

		double更精确

		比如说:
			10.0 / 3 如果采用float来存储的话结果可能是:3.33333
			10.0 / 3 如果采用double来存储的话结果可能是:3.3333333333

		但是需要注意的是,如果用在银行方面或者说使用在财务方面,double
		也是远远不够的,在java中提供了一种精度更高的类型,这种类型专门
		使用在财务软件方面:java.math.BigDecimal(不是基本数据类型,属于引用数据类型)

		float和double存储数据的时候都是存储的近似值。
		原因:
			因为现实中有这种无限循环的数据,例如:3.33333333............
			数据实际上是无限循环,但是计算机的内存有限,用一个有限的资源
			表示无限的数据,只能存储近似值。

		long类型占用8个字节。
		float类型占用4个字节。
		哪个容量大?
			注意:任意一个浮点型都比整数型空间大。
			float容量 > long容量。

	java中规定,任何一个浮点型数据默认被当做double来处理。
	如果想让这个浮点型字面量被当做float类型来处理,那么
	请在字面量后面加F/f。
		1.0,那么1.0默认被当做double类型来处理。
		1.0F 这才是float类型。(1.0f)
*/

public class FloatTest01{
	public static void main(String[] args){
		
		// 这个不存在类型转换
		// 3.1415926是double类型
		// pi是double类型
		double pi = 3.1415926;
		System.out.println(pi);

		// 这个可以吗?
		// 错误:不兼容的类型:从double转换到float可能会有损失
		// float f = 3.14;

		// 怎么修改以上的代码呢?
		// 第一种方式:
		// float f = 3.14F;

		// 第二种方式:强制类型转换,但可能损失精度。谨慎使用。
		float f = (float)3.14;
		System.out.println(f);

		// 分析这个程序可以编译通过吗?
		// 错误:不兼容的类型: 从double转换到int可能会有损失
		// 原理:先将5转换成double类型,然后再做运算,结果是double类型
		// 大容量无法直接赋值给小容量,需要强转。
		// int i = 10.0 / 5;
	
		// 怎么修改?
		// int i = (int)10.0 / 5;
		// System.out.println(i); // 2

		// 可以这样修改吗?
		// 强转后只留下整数位。
		int i = (int)(10.0 / 5);
		System.out.println(i);
	}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值