3

我想编写一个计算器,它从文本字段中获取数字并将它们加在一起以在文本区域中给出它们。它可以从文本字段中获取两个数字,但是当我将它们加在一起时,它会给出:1+1=11

如何添加两个字符串使其等于 2?

这是我的源代码:

private void ButtonPlusActionPerformed(java.awt.event.ActionEvent evt) {                                           
    String Nummer1 = Zahl1.getText();
    String Nummer2 = Zahl2.getText();

    int intZahl1 = Integer.parseInt(Nummer1);
    Integer integerZahl1 = new Integer(Nummer1);

            int intZahl2 = Integer.parseInt(Nummer2);
    Integer integerZahl2 = new Integer(Nummer2);

    Result.setText(Nummer1 + Nummer2);

Result是我的文本区域的名称,而 diversNummer只是变量,您可能已经注意到了。

4

1 回答 1

5

您添加的是字符串而不是整数。您需要添加 integerZahl1 和 intZahl2 而不是 Nummer1 和 Nummer2。

例如,

int intResult = intZahl1 + intZahl2;
Result.setText(String.valueOf(intResult));

顺便说一句,您需要学习并遵循 Java 命名约定。变量和方法名应以小写字母开头,类名应以大写字母开头。


多姆说:

或者你可以只做 Result.setText(intZahl1 + intZahl2); 如果您只需要显示结果。

Dom,请理解它setText(...)需要一个String参数,而不是一个int,所以编译器不允许你的方法调用。如果有人尝试

Result.setText("" + intZahl + intZahl2);

他们会11再次得到。为了使您的技术发挥作用,您需要执行以下操作,

Result.setText(String.valueOf(intZahl1 + intZahl2));

编辑

您还需要使用整数而不是整数。

于 2013-10-08T18:55:39.163 回答