草庐IT

Java Double 始终四舍五入为小数点后两位

这个问题在这里已经有了答案:Formattingdoubleto2decimalsdoesn'twork(4个答案)关闭8年前。我正在尝试将double值四舍五入为2位小数,但它并非在所有情况下都有效publicstaticdoubleround(doublevalue,intplaces){if(places简而言之,无论是否存在小数点,即使需要补零,也始终将值保留为小数点后两位。感谢任何帮助!

java - 停止带百分号的 DecimalFormat 移动小数点

有没有办法阻止DecimalFormat对象自动将小数位向右移动两位?这段代码:doubled=65.87;DecimalFormatdf1=newDecimalFormat("#,##0.00");DecimalFormatdf2=newDecimalFormat("#,##0.00%");System.out.println(df1.format(d));System.out.println(df2.format(d));产生:65.876,587.00%但我希望它产生:65.8765.87% 最佳答案 用单引号将%括起来:De

java - 使用正则表达式删除尾随小数点和零

这是从字符串中删除尾随小数点和零的正确正则表达式吗?我无法让它工作。我错过了什么?78.000->7878.008->78.008str.replaceAll("^.0*$",""); 最佳答案 您需要转义.,因为它是Regex中的一个特殊字符,可以匹配任何字符。您还必须删除^,它锚定在数字的开头。str.replaceAll("\\.0*$","");如果你想确保点前面有一个数字,你可以使用lookbehind,像这样:str.replaceAll("(?lookbehind((?部分)不是匹配的一部分,因此它不会被替换,但它仍然

java - 在 Java 中打印带 2 个小数位的整数

在我的代码中,我使用整数乘以100作为小数(0.1等于10等)。你能帮我格式化输出以将其显示为十进制吗? 最佳答案 intx=100;DecimalFormatdf=newDecimalFormat("#.00");//Setyourdesiredformathere.System.out.println(df.format(x/100.0)); 关于java-在Java中打印带2个小数位的整数,我们在StackOverflow上找到一个类似的问题: http

java - 如何将大十六进制数(带小数点)转换为 BigDecimal

我在String中有一个十六进制格式(带小数点)的大数字,我想将它转换为BigDecimal。示例值:0xcc.ccdp+1600在BigDecimal类中,我没有看到任何函数将表示十六进制格式数字的字符串作为输入并返回相应的BigDecimal。有没有办法将一个大的十六进制数从String转换为BigDecimal? 最佳答案 我很惊讶BigDecimal还不支持这个。我写了以下内容,我认为应该可以。它通过了我的初始测试(0xcc.ccdp+0、0xcc.ccdp+1、0xcc.ccdp+16、0xcc.ccdp+256,还有你的

java - 将 double 分为整数和小数部分

我正在尝试将double分为整数和小数部分因此,例如,数字24.4应分为24和4。intinteger=(int)number;doubledecimal=number-(int)number;System.out.println(decimal);使用此方法可以得到以下值:integer=24decimal=0.3999999999999986我需要decimal的值为4。如何解决这个问题? 最佳答案 你可以做一个字符串split(...).然后是整数parseInt(...)取回两个整数分量。

Java:使用 DecimalFormat 格式化 double 和整数,但保留没有小数点分隔符的整数

我正在尝试在Java程序中格式化一些数字。这些数字将是double和整数。在处理double时,我只想保留两位小数,但在处理整数时,我希望程序不影响它们。换句话说:double-输入14.0184849945double-输出14.01整数-输入13整数-输出13(not13.00)有没有办法在相同DecimalFormat实例中实现它?到目前为止,我的代码如下:DecimalFormatdf=newDecimalFormat("#,###,##0.00");DecimalFormatSymbolsotherSymbols=newDecimalFormatSymbols(Locale.

java - 在jsf中以2点小数格式显示数字

我使用的是JSF2和RichFaces3。在下图中,数字显示为它们在数据库中的样子。但如果有小数部分,我想将它们显示为6749395.20,如果没有小数部分,则显示为5095138.00。到目前为止,我已经尝试过类似的方法。实际上,我将所有这些都放在一起展示,但我已经尝试将所有这些与type、groupingUsed、minFractionDigits进行所有可能的组合>和模式。为什么不起作用?这是怎么引起的,我该如何解决? 最佳答案 如果值不是Number就会发生这种情况完全没有,例如String.然后,您基本上对它所代表的数据使

python - 如何在python中沿小数点对齐正值和负值

我想将一堆正值和负值写入如下文本文件112.2030262.291063-0.0616031-0.7361471.353548-1.34793260.7280481.3489070.2475666-0.7280481.348907-10.247565110.7361471.3535471.3479321-1.20302612.2910630.061604611.5838890.179143-10.258947当我写的时候,它应该像上面那样沿着小数点对齐。我使用以下f.write()命令编写的代码如下所示。f.write('%s%2.6f%2.6f%2.6f\n'%(a,x,y,z))输

python找到小数点后的第一个非零数字

简单的问题,如何找到小数点后的第一个非零数字。我真正需要的是小数点和第一个非零数字之间的距离。我知道我可以用几行代码来完成,但我想要一些pythonic的、漂亮而干净的方法来解决这个问题。到目前为止我有这个>>>t=[(123.0,2),(12.3,1),(1.23,0),(0.1234,0),(0.01234,-1),(0.000010101,-4)]>>>dist=lambdax:str(float(x)).find('.')-1>>>[(x[1],dist(x[0]))forxint][(2,2),(1,1),(0,0),(0,0),(-1,0),(-4,0)]