试图在java中构建一个计算器,但我不断收到.class错误

时间:2015-07-11 06:25:35

标签: java .class-file java.lang.class js.class

我刚刚开始了我的夏季课程提供的java课程,我们的任务是创建一个简单的计算器。我创建了所有不同的案例并且考虑了所有变量,但由于某种原因我不断得到.class错误,我不知道它是什么,我知道它来自:

个案(int fnum,int snum,String op);

import java.util.Scanner;

public class day1{
   public static void main(String [] args){
      cases(int fnum, int snum, String op);
   }
   public static void input(){
      Scanner userInput = new Scanner(System.in);

      int fnum, snum;
      String op;

      System.out.println("Enter first num: ");
      fnum = userInput.nextInt();

      System.out.println("Enter second num: ");
      snum = userInput.nextInt();

      System.out.println("Enter operation: ");
      op = userInput.next();
  }

  public static void cases(int fnum, int snum, String op){
      input();
      switch(op){
      case "+":
         System.out.println(fnum + snum);
         break;
      case "-":
         System.out.println(fnum - snum);
         break;
      case "*":
         System.out.println(fnum * snum);
         break;
      case "/":
         System.out.println(fnum / snum);
         break;
      default:
         System.out.println(fnum % snum);
         break;
      }

  }

}

1 个答案:

答案 0 :(得分:0)

将您的代码更改为这样。

 import java.util.Scanner;

public class day1{
    public static void main(String [] args){
        int fnum = 5;
        int snum = 5;
        String op = "";
        input(fnum, snum, op);
    }
    public static void input(int fnum, int snum, String op){
        Scanner userInput = new Scanner(System.in);

        System.out.println("Enter first num: ");
        fnum = userInput.nextInt();

        //rest of your code

        cases(fnum, snum, op);
    }
    public static void cases(int fnum, int snum, String op){
           //your code
    } 
}

你需要声明你的变量然后将它们传递给你的函数,这样你的case函数也可以引用它们。我认为你的老师所说的主要内容是不要在main()内做你的输入和案例代码。相反,您的老师可能希望您使用功能,就像您正在做的那样。