如何在Android中将double转换为int? [复制]

Posted

技术标签:

【中文标题】如何在Android中将double转换为int? [复制]【英文标题】:How to convert double to int in Android? [duplicate] 【发布时间】:2015-10-13 15:09:34 【问题描述】:

我只想在我的 UI 中将 double 转换为 int,我将其渲染为 double,但对于后端我想转换为整数。

Double d = 45.56;

OutPut = 4556;

请任何人告诉我如何以这种格式获取值。

【问题讨论】:

供您参考,如果您将Double 转换为int,则结果为45 而不是4556,但如果您真的想要输出4556,请从您的@987654328 中删除.(dot) @ 价值。 what's wrong? 双 d = 45.56; String temp = String.valueOf(d); if (temp .contains(".")) temp = temp .replaceAll(".",""); 【参考方案1】:

试试这个方法,Courtesy

double d = 45.56;
int i = (int) d;

如需了解更多信息,您可以访问converting double to integer in java

【讨论】:

【参考方案2】:

如果你只是想将 Double 转换为 int,

Double D = 45.56;
int i = Integer.valueOf(D.intValue());
//here i becomes 45

但是如果你想删除所有的十进制数字并计算整个值,

//first convert the Double to String 
double D = 45.56;
String s = String.valueOf(D);
// remove all . (dots) from the String
String str = str.replace(".", "");
//Convert the string back to int
int i = Integer.parseInt(str);
// here i becomes 4556

【讨论】:

【参考方案3】:

您正在使用 Double 作为对象(双精度类型的包装器)。您需要先将其转换为字符串,然后再转换为 int。

Double d=4.5;
int  i = Integer.parseInt(d.toString());

如果你想把它放在 Integer Object Wrapper 中,那么可以写成

Integer  i = Integer.parseInt(d.toString());

编辑 如果你想得到想要的结果 - 你可以这样走——

    Double d = 4.5;
    double tempD = d;
    int tempI = (int) tempD * 100;
    //Integer i = tempI;

【讨论】:

哦,我猜不出投反对票的原因。谢谢@2Dee,我会记住的。 我不确定是否反对,那不是我(否则我也会反对其他类似的答案)。我投票考虑帖子回答问题的能力,你这样做;)谢谢你记住我的评论,我相信你会意识到关闭重复而不是回答它们会显着提高网站的质量,这就是我们想要的 ;)【参考方案4】:

试试这个代码

double d = 45.56; 
String temp = String.valueOf(d); 
if (temp .contains("."))  
    temp = temp .replaceAll(".",""); 

// After if you want to convert to integer then
int output = Integer.parseInt(temp);

【讨论】:

以上是关于如何在Android中将double转换为int? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

在 C# 中将 double 转换为 int

在Javascript中将double转换为int而不四舍五入

如何在 Java 中将 Integer[] 转换为 int[] 数组?

无论如何在Android中将Drawable转换为int

在 Python 3 中将字符串转换为 int 或 float?

java中将一个double类型的数强制转换为long 型是四舍五入吗?