java中的科学记谱法抽象

时间:2010-12-09 05:59:03

标签: java math scientific-notation

是否有一个java类抽象来表示科学数字(e.g. the number, 10 power modulus),因此我可以在它们之上进行乘法或除法等简单操作。

注意:在此处寻找与Fraction类似的内容。

3 个答案:

答案 0 :(得分:3)

正如Emil所说,BigDecimal会帮助你。它没有允许您输入双尾数和int指数的构造函数。您可以扩展类以创建新的构造函数,或者,您可以定义DecimalFormat。我认为DecimalFormat类会做你想要的一些。它允许您如何定义数字的“外观”。您需要使用String定义格式,教程是 http://download.oracle.com/javase/tutorial/i18n/format/decimalFormat.html

你必须定义科学数字的格式,调用yourDecimalFormat.parse(yourStringtoBecomeScientificNumber),它会给你一个数字,然后把它作为一个BigDecimal来对它做算术。

另请注意,这应该允许您在小数点左侧强制使用一定数量的有效数字或数字。

答案 1 :(得分:1)

我没有得到你的例子。如果你需要一个不同类型的数字表示,你可以通过扩展抽象类Number来实现。还要看看BigDecimals。我想这是你在找什么。

答案 2 :(得分:0)

您可以将数字写为数字+ e +指数,例如: 1e2而不是100。 乘法和除法应该适用它。