Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.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 计算器字符串_Java_String_Add_Calculator - Fatal编程技术网

Java 计算器字符串

Java 计算器字符串,java,string,add,calculator,Java,String,Add,Calculator,我想写一个计算器,从文本字段中提取数字,并将它们相加,在文本区域中给出它们。 它可以从文本字段中提取两个数字,但当我将它们相加时,它会给出:1+1=11 如何将这两个字符串相加,使其等于2 这是我的源代码: private void ButtonPlusActionPerformed(java.awt.event.ActionEvent evt) { String Nummer1 = Zahl1.get

我想写一个计算器,从文本字段中提取数字,并将它们相加,在文本区域中给出它们。 它可以从文本字段中提取两个数字,但当我将它们相加时,它会给出:
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
是我的文本区域的名称,而divers
numer
s只是变量,正如您可能已经注意到的那样。

您添加的是字符串,而不是int。您需要添加integerZahl1和intZahl2,而不是numer1和numer2

比如说,

int intResult = intZahl1 + intZahl2;
Result.setText(String.valueOf(intResult));
另外,您还需要学习并遵循Java命名约定。变量和方法名称应以小写字母开头,类名应以大写字母开头


Dom声明:

也可以只执行Result.setText(intZahl1+intZahl2);如果您只需要显示结果

Dom,请理解
setText(…)
需要一个字符串参数,而不是int,因此编译器将不允许您的方法调用。如果一个人试着

Result.setText("" + intZahl + intZahl2);
他们会再次得到
11
。为了让你的技术发挥作用,你需要

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

编辑


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

它不应该是
intResult=intZahl1+intZahl2?@StormeHawke:D'oh!谢谢没问题,我们都有D'oh时刻:)或者你可以只做
Result.setText(intZahl1+intZahl2)
如果您只需要显示结果。@Dom:您的建议有缺陷。除了@hovercraftfullofels的答案之外,我想指出的是Java编码惯例规定包名都是小写的,类名是以大写字母开头的CamelCase,变量名是以小写字母开头的CamelCase。总而言之,你应该把变量
Nummer1
&
Nummer2
声明为
Nummer1
&
Nummer2
,尽管我知道名词都是大写的,所以它不是那么直观