Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/348.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_Compiler Errors - Fatal编程技术网

Java 错误消息:´;)´;预期,以及;不是一份声明”´´;预期

Java 错误消息:´;)´;预期,以及;不是一份声明”´´;预期,java,compiler-errors,Java,Compiler Errors,我对编程一无所知。我正在网上阅读一些教程,Barry Burds在学习Java编程的同时也在读“Java for dummies”。我尝试了所有我能想到的变化,但没有成功。 在一个练习中,我将制作以下程序,在“messageDialogBox”中打印一条消息,其中应包含程序用户写入的数字。不幸的是,我在尝试编译时收到以下错误消息:有人能帮我让代码正常工作吗?代码有什么问题 5 errors Addition2.java:24: ')' expected JOptionPane.sho

我对编程一无所知。我正在网上阅读一些教程,Barry Burds在学习Java编程的同时也在读“Java for dummies”。我尝试了所有我能想到的变化,但没有成功。 在一个练习中,我将制作以下程序,在“messageDialogBox”中打印一条消息,其中应包含程序用户写入的数字。不幸的是,我在尝试编译时收到以下错误消息:有人能帮我让代码正常工作吗?代码有什么问题

5 errors
Addition2.java:24: ')' expected
      JOptionPane.showMessageDialog( null, firstnumber "+" secondnumber
                                                      ^
Addition2.java:25: not a statement
      + sum, "Results", JOptionPane.PLAIN_MESSAGE );
      ^
Addition2.java:25: ';' expected
      + sum, "Results", JOptionPane.PLAIN_MESSAGE );
           ^
Addition2.java:25: not a statement
      + sum, "Results", JOptionPane.PLAIN_MESSAGE );
                                   ^
Addition2.java:25: ';' expected
      + sum, "Results", JOptionPane.PLAIN_MESSAGE );
代码如下:

import javax.swing.JOptionPane;

public class Addition2
{
   public static void main( String args[] )
   {
      String firstnumberstring;
      String secondnumberstring;

      int firstnumber;
      int secondnumber;
      int sum;

      firstnumberstring = JOptionPane.showInputDialog( 
            "Write first number" );
      secondnumberstring =
         JOptionPane.showInputDialog( "Write second number" );

      firstnumber = Integer.parseInt( firstnumberstring );
      secondnumber = Integer.parseInt( secondnumberstring );

      sum = firstnumber + secondnumber;

      JOptionPane.showMessageDialog( null, firstnumber "+" secondnumber
      + sum, "Results", JOptionPane.PLAIN_MESSAGE );
   } 
}

假设
showMessageDialog
用于显示添加的结果,则此行

JOptionPane.showMessageDialog(null, firstnumber "+" secondnumber
      + sum, "Results", JOptionPane.PLAIN_MESSAGE);
应该读一些类似的东西

JOptionPane.showMessageDialog(null, firstnumber + "+" + secondnumber + "=" +
                                                ^     ^              ^^^^^^^

      + sum, "Results", JOptionPane.PLAIN_MESSAGE);
(仅仅将字符串和数字放在一起并不能将它们连接起来。您必须在两者之间放置一个
+

另外,请注意,
5+3+“hello”
产生
“8hello”
。要生成
53 hello
,您必须执行例如
“”+5+3+“hello”


例如,您还可以使用

String msg = String.format("%d + %d = %d", firstnumber, secondnumber, sum);
JOptionPane.showMessageDialog(null, msg, "Results", JOptionPane.PLAIN_MESSAGE);
这就是问题所在:

firstnumber "+" secondnumber
不清楚你在这里是什么意思。你真的想要一个算术和吗?如果是这样,则不应在
+
运算符周围加引号:

JOptionPane.showMessageDialog(null, firstnumber + secondnumber + sum,
    "Results", JOptionPane.PLAIN_MESSAGE );
如果您实际上打算使用字符串连接并在字符串中包含“+”,则需要使用如下内容:

JOptionPane.showMessageDialog(null, firstnumber + "+" + secondnumber + "=" + sum,
    "Results", JOptionPane.PLAIN_MESSAGE );
+ "+" +
有点像这样:

JOptionPane.showMessageDialog(null, firstnumber + "+" + secondnumber + "=" + sum,
    "Results", JOptionPane.PLAIN_MESSAGE );
+ "+" +

这里的第一个和第三个
+
符号是字符串连接运算符。中间的一个在字符串文本中。

您需要使用字符串cat运算符连接字符串:+

JOptionPane.showMessageDialog( null, firstnumber  + "+" + secondnumber + " = " + sum, "Results", JOptionPane.PLAIN_MESSAGE );
顺便说一句;在第一次分配变量的地方声明变量被认为是一件好事,而不是坚持旧的c要求(使用古老的根),即所有变量必须在实际代码之前声明

String firstnumberstring = JOptionPane.showInputDialog( 
        "Write first number" );
当试图找出变量的使用位置时,它会有一点帮助。
当一个变量只在一个特定的范围内使用时,它特别好;(在花括号内)

非常感谢您!我缺了3+个符号。使其+“+”成功了!再次非常感谢你!确保对所有有帮助的答案进行投票,并接受回答您问题/解决您问题的答案。