科学记数法android java

科学记数法android java,第1张

概述我已经用Java为Android编写了一个简单的计算器.我将double用作变量.它达到一定的小数位数后,给我的结果以科学计数法表示,尽管小数位数仍有很大的空间.有什么简单的方法可以将科学符号转换为“正常”符号?我现在可以分别用一个按钮执行-,*和/.输入两个数字以分别在编辑文本中进行计

我已经用Java为Android编写了一个简单的计算器.我将double用作变量.它达到一定的小数位数后,给我的结果以科学计数法表示,尽管小数位数仍有很大的空间.有什么简单的方法可以将科学符号转换为“正常”符号?

我现在可以分别用一个按钮执行-,*和/.输入两个数字以分别在编辑文本中进行计算.我将结果输出到另一个文本字段中.

例如:

如果我将25乘以1’000’000,我得到2.5E7
结果我想得到25’000’000.

我的代码示例如下:

主要活动:

package com.example.rechner;import androID.app.Activity;import androID.os.Bundle;import androID.vIEw.Menu;import androID.vIEw.VIEw;import androID.Widget.EditText;public class MainActivity extends Activity {@OverrIDeprotected voID onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentVIEw(R.layout.activity_main);    setRequestedOrIEntation(1);}@OverrIDepublic boolean onCreateOptionsMenu(Menu menu) {    // Inflate the menu; this adds items to the action bar if it is present.    getMenuInflater().inflate(R.menu.main, menu);    return true;}public voID buttonClickDurch (VIEw vIEw) {    double zahl1;    double zahl2;    double Ergebnis;    EditText Feld1 = (EditText)findVIEwByID(R.ID.zahl1);    EditText Feld2 = (EditText)findVIEwByID(R.ID.zahl2);    EditText FeldErgebnis = (EditText)findVIEwByID(R.ID.Ergebnis);    if (Feld1.getText().toString().length() == 0) {        return;    }    if (Feld2.getText().toString().length() == 0) {        return;    }    zahl1 = Double.parseDouble(Feld1.getText().toString());    zahl2 = Double.parseDouble(Feld2.getText().toString());    Ergebnis = zahl1 / zahl2;    FeldErgebnis.setText(String.valueOf(Ergebnis));}public voID buttonClickPlus (VIEw vIEw) {    double zahl1;    double zahl2;    double Ergebnis;    EditText Feld1 = (EditText)findVIEwByID(R.ID.zahl1);    EditText Feld2 = (EditText)findVIEwByID(R.ID.zahl2);    EditText FeldErgebnis = (EditText)findVIEwByID(R.ID.Ergebnis);    if (Feld1.getText().toString().length() == 0) {        return;    }    if (Feld2.getText().toString().length() == 0) {        return;    }    zahl1 = Double.parseDouble(Feld1.getText().toString());    zahl2 = Double.parseDouble(Feld2.getText().toString());    Ergebnis = zahl1 + zahl2;    FeldErgebnis.setText(String.valueOf(Ergebnis));    }public voID buttonClickMinus (VIEw vIEw) {    double zahl1;    double zahl2;    double Ergebnis;    EditText Feld1 = (EditText)findVIEwByID(R.ID.zahl1);    EditText Feld2 = (EditText)findVIEwByID(R.ID.zahl2);    EditText FeldErgebnis = (EditText)findVIEwByID(R.ID.Ergebnis);    if (Feld1.getText().toString().length() == 0) {        return;    }    if (Feld2.getText().toString().length() == 0) {        return;    }    zahl1 = Double.parseDouble(Feld1.getText().toString());    zahl2 = Double.parseDouble(Feld2.getText().toString());    Ergebnis = zahl1 - zahl2;    FeldErgebnis.setText(String.valueOf(Ergebnis));    }public voID buttonClickMal (VIEw vIEw) {    double zahl1;    double zahl2;    double Ergebnis;    EditText Feld1 = (EditText)findVIEwByID(R.ID.zahl1);    EditText Feld2 = (EditText)findVIEwByID(R.ID.zahl2);    EditText FeldErgebnis = (EditText)findVIEwByID(R.ID.Ergebnis);    if (Feld1.getText().toString().length() == 0) {        return;    }    if (Feld2.getText().toString().length() == 0) {        return;    }    zahl1 = Double.parseDouble(Feld1.getText().toString());    zahl2 = Double.parseDouble(Feld2.getText().toString());    Ergebnis = zahl1 * zahl2;    FeldErgebnis.setText(String.valueOf(Ergebnis));}}

我的activity_main.xml

<relativeLayout xmlns:androID="http://schemas.androID.com/apk/res/androID"xmlns:tools="http://schemas.androID.com/tools"androID:layout_wIDth="match_parent"androID:layout_height="match_parent"androID:paddingBottom="@dimen/activity_vertical_margin"androID:paddingleft="@dimen/activity_horizontal_margin"androID:paddingRight="@dimen/activity_horizontal_margin"androID:paddingtop="@dimen/activity_vertical_margin"tools:context=".MainActivity"androID:background="#ABE033" ><TextVIEw    androID:ID="@+ID/textVIEw1"    androID:layout_wIDth="wrap_content"    androID:layout_height="wrap_content"    androID:layout_alignParentleft="true"    androID:layout_alignParenttop="true"    androID:text="@string/Zahl1"    androID:textAppearance="?androID:attr/textAppearanceLarge" /><EditText    androID:ID="@+ID/zahl1"    androID:layout_wIDth="match_parent"    androID:layout_height="wrap_content"    androID:layout_alignleft="@+ID/textVIEw1"    androID:layout_below="@+ID/textVIEw1"    androID:ems="10"    androID:inputType="numberDecimal" /><TextVIEw    androID:ID="@+ID/textVIEw2"    androID:layout_wIDth="wrap_content"    androID:layout_height="wrap_content"    androID:layout_alignleft="@+ID/zahl1"    androID:layout_below="@+ID/zahl1"    androID:text="@string/Zahl2"    androID:textAppearance="?androID:attr/textAppearanceLarge" /><EditText    androID:ID="@+ID/zahl2"    androID:layout_wIDth="match_parent"    androID:layout_height="wrap_content"    androID:layout_alignleft="@+ID/textVIEw2"    androID:layout_below="@+ID/textVIEw2"    androID:layout_margintop="11dp"    androID:ems="10"    androID:inputType="numberDecimal" /><EditText    androID:ID="@+ID/Ergebnis"    androID:layout_wIDth="match_parent"    androID:layout_height="wrap_content"    androID:layout_alignleft="@+ID/zahl2"    androID:layout_below="@+ID/zahl2"    androID:inputType="numberDecimal"    androID:ems="10" /> <button     androID:ID="@+ID/buttonplus"     androID:layout_wIDth="50dp"     androID:layout_height="50dp"     androID:onClick="buttonClickPlus"     androID:text="@string/Plus"     androID:layout_alignleft="@+ID/Ergebnis"     androID:layout_centerVertical="true"/> <button     androID:ID="@+ID/buttondurch"     androID:layout_wIDth="50dp"     androID:layout_height="50dp"     androID:layout_marginRight="12dp"     androID:onClick="buttonClickDurch"     androID:text="@string/Durch"     androID:layout_alignBaseline="@+ID/buttonmal"     androID:layout_alignBottom="@+ID/buttonmal"     androID:layout_alignRight="@+ID/Ergebnis"/> <button     androID:ID="@+ID/buttonmal"     androID:layout_wIDth="50dp"     androID:layout_height="50dp"     androID:layout_alignBaseline="@+ID/buttonminus"     androID:layout_alignBottom="@+ID/buttonminus"     androID:layout_toleftOf="@+ID/buttondurch"     androID:onClick="buttonClickMal"     androID:text="@string/Mal" /> <button     androID:ID="@+ID/buttonminus"     androID:layout_wIDth="50dp"     androID:layout_height="50dp"     androID:layout_alignBaseline="@+ID/buttonplus"     androID:layout_alignBottom="@+ID/buttonplus"     androID:layout_toRightOf="@+ID/buttonplus"     androID:onClick="buttonClickMinus"     androID:text="@string/Minus" /></relativeLayout>

和我的strings.xml

<?xml version="1.0" enCoding="utf-8"?><resources><string name="app_name">Rechner</string><string name="action_settings">Settings</string><string name="hello_world">Hello World!</string><string name="Zahl2">Zahl 2:</string><string name="Durch">:</string><string name="Zahl1">Zahl 1:</string><string name="Plus">+</string><string name="Minus">-</string><string name="Mal">*</string></resources>

解决方法:

例如,如果您希望双精度显示两个小数,则可以使用:

NumberFormat formatter = new DecimalFormat("#0.00");     System.out.println(formatter.format(4.0));
总结

以上是内存溢出为你收集整理的科学记数法android java全部内容,希望文章能够帮你解决科学记数法android java所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1094358.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存