Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/401.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java TextView不显示科学记数法中的大值_Java_Android_Xml_Double_Scientific Notation - Fatal编程技术网

Java TextView不显示科学记数法中的大值

Java TextView不显示科学记数法中的大值,java,android,xml,double,scientific-notation,Java,Android,Xml,Double,Scientific Notation,以下是文本视图: <TextView android:id="@+id/input" android:layout_width="fill_parent" android:layout_height="wrap_content" android:background="#000000" android:gravity="right" android:textAlignment="viewEnd" android:textColor="#ffffff" android:textSize="5

以下是文本视图:

<TextView
android:id="@+id/input"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="#000000"
android:gravity="right"
android:textAlignment="viewEnd"
android:textColor="#ffffff"
android:textSize="50sp"/>
TextView
只需扩展更多行以适应较大的数字(现在是字符串)。我想这是因为我使用了
包装内容
作为高度,但我不能使用
填充父项

如果我使用android:lines=“1”,那么我根本看不到所有的数字。 那么,在显示在
TextView
中之前,如何将double转换为科学符号呢

编辑 我刚刚发现它是用科学记数法显示的,但只适用于大于10^12的值,但它们不只是可见的


所以我只是想显示大于1E10的值。

将double转换成科学符号,就像这样

public static String parseToCientificNotation(double result) {
    int cont = 0;
    java.text.DecimalFormat DECIMAL_FORMATER = new java.text.DecimalFormat("0.##");
    while (((int) result) != 0) {
        result/= 10;
        cont++;
    }
    return DECIMAL_FORMATER.format(result).replace(",", ".") + " x10^ -" + cont;

}

将double转换成那样的科学符号

public static String parseToCientificNotation(double result) {
    int cont = 0;
    java.text.DecimalFormat DECIMAL_FORMATER = new java.text.DecimalFormat("0.##");
    while (((int) result) != 0) {
        result/= 10;
        cont++;
    }
    return DECIMAL_FORMATER.format(result).replace(",", ".") + " x10^ -" + cont;

}

精彩的可能重复。它甚至在格式化更小的数字。我修改了它。谢谢,太好了。它甚至在格式化更小的数字。我修改了它。非常感谢。