描述
这个java.math.BigDecimal.toString()如果需要 index ,则使用科学记数法返回此 BigDecimal 的字符串表示形式。
BigDecimal 的标准规范字符串形式是通过以下步骤创建的:首先,使用不带前导零的字符 '0' 到 '9' 将 BigDecimal 未缩放值的绝对值转换为以十为底的字符串(除非它的值为零,在这种情况下使用单个 '0' 字符)。
接下来,计算调整后的 index ;这是否定的比例,加上转换后的未缩放值中的字符数,减去一。即 -scale+(ulength-1),其中 ulength 是以十进制数字表示的未缩放值的绝对值的长度(其精度)。
如果刻度大于或等于零且调整后的 index 大于或等于-6,则不使用 index 表示法将数字转换为字符形式。
在这种情况下,如果小数位数为零,则不添加小数点,如果小数位数为正,则将插入小数点,小数点指定小数点右侧的字符数。根据需要将 '0' 字符添加到转换后的未缩放值的左侧。如果在此插入后没有字符位于小数点之前,则将使用传统的 '0' 字符作为前缀。
否则(即,如果比例为负,或调整后的 index 小于 -6),数字将使用 index 表示法转换为字符形式。在这种情况下,如果转换后的 BigInteger 有多个数字,则会在第一个数字后插入小数点。
然后将字符形式的 index 作为转换后的未换算值的后缀(可能插入小数点);这包括字母 'E' 紧随其后的是转换为字符形式的调整后的 index 。
后者以十为底,使用字符 '0' 到 '9' 没有前导零,并且如果调整后的 index 为负,则始终以符号字符 '-' ('\u002D') 为前缀,否则为 '+' ('\u002B')。
最后,如果未缩放的值小于零,则整个字符串以减号字符 '-' ('\u002D') 为前缀。如果未缩放的值为零或正数,则没有符号字符作为前缀。
声明
以下是声明java.math.BigDecimal.toString()方法。
public String toString()
覆盖
类中的 toStringObject。
参数
NA
返回值
此方法返回此 BigDecimal 的字符串表示形式。
异常
NA
示例
下面的例子展示了 math.BigDecimal.toString() 方法的用法。
package com.tutorialspoint;
import java.math.*;
public class BigDecimalDemo {
public static void main(String[] args) {
// create a BigDecimal object
BigDecimal bg;
// create a String object
String s;
MathContext mc = new MathContext(3); // 3 precision
bg = new BigDecimal("1234E4", mc);
// assign the string value of bg to s
s = bg.toString();
String str = "String value of " + bg + " is " + s;
// print s value
System.out.println( str );
}
}
让我们编译并运行上面的程序,这将产生以下结果——
String value of 1.23E+7 is 1.23E+7
相关用法
- Java Java.math.BigDecimal.toBigInteger()用法及代码示例
- Java Java.math.BigDecimal.toEngineeringString()用法及代码示例
- Java Java.math.BigDecimal.toBigIntegerExact()用法及代码示例
- Java Java.math.BigDecimal.toPlainString()用法及代码示例
- Java Java.math.BigDecimal.hashCode()用法及代码示例
- Java Java.math.BigDecimal.compareTo()用法及代码示例
- Java Java.math.BigDecimal.scaleByPowerOfTen()用法及代码示例
- Java Java.math.BigDecimal.longValue()用法及代码示例
- Java Java.math.BigDecimal.ulp()用法及代码示例
- Java Java.math.BigDecimal.divideToIntegralValue()用法及代码示例
- Java Java.math.BigDecimal.abs()用法及代码示例
- Java Java.math.BigDecimal.plus()用法及代码示例
- Java Java.math.BigDecimal.divideAndRemainder()用法及代码示例
- Java Java.math.BigDecimal.round()用法及代码示例
- Java Java.math.BigDecimal.equals()用法及代码示例
- Java Java.math.BigDecimal.unscaledValue()用法及代码示例
- Java Java.math.BigDecimal.max()用法及代码示例
- Java Java.math.BigDecimal.scale()用法及代码示例
- Java Java.math.BigDecimal.multiply()用法及代码示例
- Java Java.math.BigDecimal.stripTrailingZeros()用法及代码示例
注:本文由纯净天空筛选整理自 Java.math.BigDecimal.toString() Method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。