我正在创建一个基本的GUI,它接受用户输入的金额,并用预先存在的金额减去它。然而,它不会让我运行下面的一个,因为我得到了一个字符串不能转换为double的错误。这里使用parseInt方法不起作用,因为im使用getText方法。
String message = txtaMessage.getText();
String transaction1 = txtfAmountTransfer.getText();
String reciever = txtfTransferTo.getText();
lblOutputTransferInfo.setText("Your Amount of "+transaction1+" has been sent to "+reciever+" .");
lblOutputTransferMsg.setText("With a Message: "+ message);
double balance = 5123.84;
String newBalance = balance - transaction1;//this will not work but the concept I need
lblSavingsBalance.setText(newBalance);
如果getText返回下面的字符串,则代码将起作用。
String message = txtaMessage.getText();
String transaction1 = txtfAmountTransfer.getText();
String reciever = txtfTransferTo.getText();
lblOutputTransferInfo.setText("Your Amount of "+transaction1+" has been sent to "+reciever+" .");
lblOutputTransferMsg.setText("With a Message: "+ message);
double balance = 5123.84;
balance = balance - Double.parseDouble(transaction1);//this will not work but the concept I need
lblSavingsBalance.setText(String.valueOf(balance));
如果您使用的是android,
(假设txtaMessage、transaction1、Receiver是TextView对象或EditText对象)
txtaMessage.getText(); //This won't return a String. This will return a CharSequence.
你必须把它转换成字符串。所以正确的方法是,
String message = txtaMessage.getText().toString();
对所有编辑文本和文本视图执行此操作。
那么事务1应该转换为Double
Double.parseDouble(transaction1);
之后,可以从平衡中减去transtraction1并将其指定给原始平衡。
balance = balance - Double.parseDouble(transaction1)
android代码的完整版本如下所示。
String message = txtaMessage.getText().toString();
String transaction1 = txtfAmountTransfer.getText().toString();
String reciever = txtfTransferTo.getText().toString();
lblOutputTransferInfo.setText("Your Amount of "+transaction1+" has been sent to "+reciever+" .");
lblOutputTransferMsg.setText("With a Message: "+ message);
double balance = 5123.84;
balance = (balance - Double.parseDouble(transaction1));//this will not work but the concept I need
lblSavingsBalance.setText(String.valueOf(balance));
如果transaction1值不是数字,则会发生异常。所以用try/catch包装它是个好主意。
try {
balance = (balance - Double.parseDouble(transaction1));//this will not work but the concept I need
lblSavingsBalance.setText(String.valueOf(balance));
} catch (NumberFormatException e) {
//Send error message like showing a toast
e.printStackTrace();
}
它不起作用,因为这里transation1是一个字符串,而balance是double。在java中,我们没有从double中减去string的方法。因此,首先,您需要将transaction1转换为double。我建议您使用双倍新天平。parseDouble(Transaction1) 然后<代码>LBL节省平衡。setText(newBalance.toString()) 将双值转换为字符串
希望一切顺利。。。
我还是一名学生,刚开始学习java编程语言,我只是想问一下如何将函数main中的参数从字符串转换为double,就像将字符串转换为整数一样。pasreInt(arg)
问题内容: 我有一个双,其值是10,000,000.00(千万)。我必须将其转换为。当使用该方法时,我会得到 “ 1.0E7”,它遵循规范是正确的。不幸的是,我需要“ 10,000,000.00”(或等价的语言,具体取决于语言环境)。 如何做到这一点? 问题答案: 尝试之一 NumberFormat http://java.sun.com/javase/6/docs/api/java/text/N
我需要将字符串值转换为带点的双精度值。下面是简单的代码 当我给出10000或100000这样的值时,它是有效的。帮助我克服这个问题。
问题内容: 这是Xcode 7.3.1 Playground中的简单代码: 输出令人惊讶: 另外,给出: 对这个家伙有什么想法或理由吗?任何对此的引用将不胜感激。 另外,我该如何将“ 8.7”转换为Double(或Float)的8.7? 编辑 迅速地: (str作为NSString).doubleValue返回8.7 现在,可以。但是,我的问题仍然没有得到完整的答案。我们找到了一个替代方法,但是为
我只是有一个关于在JAVA中添加一些货币($)的问题,我使用NumberFormat.getMONcyInstance();以“$”获取我的输出。我的程序是输入一些钱(字符串格式),例如程序只接受(100美元、50美元、20美元...等等),所以我使用了这段代码: 如何获取输入(100.00、50.00…)以从总价中减去它们。。例如我想要(100.00-12.00)(12.00是总价) 任何帮助都
问题内容: 甲 字符串 一个的表示 双 写入和从由文件读 C# 应用。 C#应用程序使用以下片段将双精度型转换为字符串: C#应用程序使用以下片段将字符串转换为双精度型 如果要在 Java 应用程序中写入和读取同一文件,您将如何转换类型而不丢失数据? 问题答案: 我相信,只要使用就可以并且不会丢失数据。特别是从docs中获取: m或a的小数部分必须打印多少个数字?必须至少有一位数字来表示小数部分,