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

java-使用方法添加两个数字

java-使用方法添加两个数字,java,Java,构建一个简单的程序,使用方法、静态变量和方法以及最终变量处理加法问题。我已经用下面的代码启动了这个程序,但是我遇到了4个错误。我已经包括了我在.java文件中遇到的所有错误 目标是尝试获取输出的2个数字,以便用户将其相加,并判断其是否正确 命令提示中出现错误: CAI.java:43: error: '.class' expected int max = 50; int min = 1; ^ CAI.java:43: err

构建一个简单的程序,使用方法、静态变量和方法以及最终变量处理加法问题。我已经用下面的代码启动了这个程序,但是我遇到了4个错误。我已经包括了我在.java文件中遇到的所有错误

目标是尝试获取输出的2个数字,以便用户将其相加,并判断其是否正确

命令提示中出现错误:

CAI.java:43: error: '.class' expected
                int max = 50; int min = 1;
                    ^
CAI.java:43: error: illegal start of expression
                int max = 50; int min = 1;
                        ^
CAI.java:43: error: ';' expected
                int max = 50; int min = 1;
                         ^
CAI.java:44: error: not a statement
                rand.nextInt((max - min) + 1) + min;
                                              ^
4 errors
CAI.java

import java.util.Scanner;
import java.util.Random;

public class CAI
{
    static Scanner input = new Scanner(System.in);

    static int addition;

    //main method
    public static void main(String[] arguments)
    {
        //declare variables
        String name;
        int addition;
        int subtraction;
        int multiplication;
        //boolean = true;

        //welcome the user
        System.out.println("Welcome to Computer Assisted Instruction");

        //get the user's name
        System.out.print("Enter your name: ");
        name = input.next();

        System.out.printf("Hi %s. Let's practice addition!", name);
    }   


    private static boolean addition(int num1, int num2)
    {
        return (num1+num2)
        //generate double digit numbers positive and negative
        int max = 50; int min = 1;
        rand.nextInt((max - min) + 1) + min;
        //Addition
        System.out.printf("What is %d + %d? ", a,b);
        addition = input.nextInt();
    }



}

返回(num1+num2)
语句后的所有代码都是不可访问的代码

此外,该语句缺少一个分号,这是msg的原因

错误:“.class”应为空

添加分号后,将出现无法访问的代码错误

改为:

  int max = 50; int min = 1;
  rand.nextInt((max - min) + 1) + min;
  //Addition
  System.out.printf("What is %d + %d? ", a,b);
  addition = input.nextInt();
  return (num1+num2);
编辑:

如果方法是声明返回一个布尔值,你就不能返回另一个类型

您的方法必须声明为:

private static int addition(int num1, int num2)

总结一下你做错了什么:

  • 返回
    ,然后编写您的方法逻辑,这不起作用
  • 您缺少一个
    返回后…
  • 返回的类型与声明的返回类型不匹配
  • rand
    未定义或类型错误
  • a
    b
    未定义
  • 未将
    rand.nextInt
    的结果分配给任何对象
  • 您的方法
    addition
    有两个参数,但是您调用它时没有任何参数
修复所有最终导致以下情况的问题:

private static boolean addition() {
    Random rand = new Random();
    int max = 50; int min = 1;
    int a = rand.nextInt((max - min) + 1) + min;
    int b = rand.nextInt((max - min) + 1) + min;

    System.out.printf("What is %d + %d? ", a, b);

    int addition = input.nextInt();

    return (a + b) == addition;
}

return(num1+num2)是方法的第一行。返回直接终止方法流,之后的一切都是死代码
return(num1+num2)
是罪魁祸首remove
return(num1+num2)
作为返回语句之后的第一行声明。你期望他们如何执行?接下来,return语句不会以
结尾-这就是为什么会出现错误…你在做什么?
返回(num1+num2)
应该做什么?您缺少一个
,您将代码放在返回的
后面,并且返回的类型不正确。您好,感谢您的解释。但是,这个错误正在弹出
CAI.java:41:error:not语句rand.nextInt((max-min)+1)+min;^1错误
我已声明错误是
+
最小值之前的
符号