Java中怎么把浮点数转变成整数只保留整数部分

 我来答
四舍五不入6
高粉答主

2020-03-16 · 还没有填写任何签名哦
四舍五不入6
采纳数:27 获赞数:71371

向TA提问 私信TA
展开全部

通过转换为字符串,再截取整数部分:

float a = 1.1f;//定义一个浮点变量a

String str = String.valueOf(a);//浮点变量a转换为字符串str

int idx = str.lastIndexOf(".");//查找小数点的位置

String strNum = str.substring(0,idx);//截取从字符串开始到小数点位置的字符串,就是整数部分

int num = Integer.valueOf(strNum);//把整数部分通过Integer.valueof方法转换为数字

展资料:

Java的浮点类型有两种:float和double。

Java的浮点类型有固定的表数范围和字段长度,字段长度和表数范围和机器无关,double类型代表双精度浮点数,float类型代表单精度浮点数。

Java的浮点数遵循IEEE754标准,采用二进制数据的科学计数法来表示浮点数,对于float型数值,第1位是符号位,接下里8位表示指数,再接下来的23位表示尾数;对于double类型数值,第一位也是符号位,接下来的11位表示指数,再接下来的52位表示尾数。

参考资料来源:百度百科-Java (计算机编程语言)

参考资料来源:百度百科-浮点数 (有理数)

woshidaniel
推荐于2017-09-19 · TA获得超过9240个赞
知道小有建树答主
回答量:1760
采纳率:96%
帮助的人:955万
展开全部

两种方式:

1、通过强制类型转换

float a=1.1f;//定义一个浮点变量a
int b = (int)a;//这里使用(int)方式对float进行强转,结果为1

2、通过转换为字符串,在截取整数部分

float a = 1.1f;//定义一个浮点变量a
String str = String.valueOf(a);//浮点变量a转换为字符串str
int idx = str.lastIndexOf(".");//查找小数点的位置
String strNum = str.substring(0,idx);//截取从字符串开始到小数点位置的字符串,就是整数部分
int num = Integer.valueOf(strNum);//把整数部分通过Integer.valueof方法转换为数字
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
runjia1987
推荐于2017-10-03 · TA获得超过914个赞
知道小有建树答主
回答量:601
采纳率:100%
帮助的人:196万
展开全部
Integer.valueOf(浮点数),Integer.oarseInt(浮点数);
或Long.valueOf(浮点数)
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
红色极致
2020-04-05 · TA获得超过783个赞
知道答主
回答量:1611
采纳率:37%
帮助的人:134万
展开全部
强制类型转换
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
jgjcq
2008-11-26 · TA获得超过270个赞
知道小有建树答主
回答量:434
采纳率:0%
帮助的人:211万
展开全部
楼上正解
不过还可以直接强转类型比如(int)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式