有没有什么方法可以在" 10"的功率下显示大数字?而不是" E"像这样:
1x10²
而不是:
1.0E2
由于
答案 0 :(得分:3)
如果性能无关紧要,您可以编写自己的程序进行转换。
public String toScientific(String input) {
String result = "";
int indexOfE = input.indexOf("E");
result = input.substring(0, indexOfE); // Get first part (e.g. "1.0")
result += " x 10^"; // Add "x 10^" --> "1.0 x 10^"
result += input.substring(indexOfE + 1, input.length()); // Add exponent
return result;
}
输入:“1.0E2”,输出:“1.0 x 10 ^ 2”
答案 1 :(得分:2)
实际上有一种打印上标字符的方法。 Unicode允许您打印0到9之间的任何数字作为上标(2070到2079,见http://unicode.org/charts/PDF/U2070.pdf)
从那里读取输入数字和一些字符串格式以确定需要打印哪些Unicode字符。不幸的是,我不认为java中有一个预建的库可以帮到你。如果您需要示例代码,请告诉我,我可以提供。
编辑:这对控制台很有用。如果您需要将其放入GUI组件中,JLabel
可以接受HTML,因此您可以说new JLabel("<html>1x10<sup>2</sup></html>");
在表单中显示该内容。