Simple Pass Fail Java程序

时间:2017-04-30 05:38:27

标签: java

我正在尝试根据以下问题编写Java函数: 编写一个名为CheckPassFail的程序,如果int变量“mark”大于或等于50,则打印“PASS”;或者以其他方式打印“FAIL”。在退出之前,程序应始终打印“DONE”。

这是我到目前为止所做的:

import java.util.*;
import java.lang.*;
import java.io.*;

class CheckPassFail(){
    int m;
    public void GetGrade(int mark){
        m = mark;
    }
public void GradeCheck(int mark){
    if(mark >= 50){
        system.out.println("Pass");
    }
    else{
        system.out.println("Fail");
    }

public static void main(String[] args){
    CheckPassFail grade = new GetGrade(66);
    grade.GradeCheck(66);
}
}

我认为我的问题与GetGrade类有关?我觉得好像设置m = mark对于这个程序是不必要的。如果您发现任何其他错误,请告诉我。谢谢。

4 个答案:

答案 0 :(得分:2)

严重问题(这些会阻止您的程序编译):

  1. 您的代码缺少}方法中的右括号GradeCheck
  2. 类声明中不得有括号,如class CheckPassFail {
  3. Java区分大小写。您必须使用System,而不是system

    中使用System.out.println();

    技术说明:System是指内置类java.lang.System。所有java.lang类都可自动使用,无需您导入。

  4. GradeCheck方法,而不是。您不能像使用new

  5. 那样创建新的实例,或使用new GetGrade(66);运算符

    非关键(但仍然很重要)的问题:

    1. 您似乎认为GetGrade是构造函数。它不是。这不是构造函数的工作方式。这不是班级的工作方式。这不是Java的工作方式。
    2. 变量m已声明并已分配给,但从未使用过。
    3. 您的计划不会打印" DONE"执行后,这是一项要求。
    4. 您的所有导入都未使用。你不应该导入无关的包。
    5. 班级CheckPassFail应该是公开的。大多数Java类都应该公开。
    6. 您的缩进不一致,使您的代码可读性降低。
    7. 代码的清理版:

      public class CheckPassFail {
          public int mark;
          public CheckPassFail(int mark) {
              this.mark = mark;
          }
      
          public void checkGrade() {
              if(mark >= 50) {
                  System.out.println("PASS");
              } else {
                  System.out.println("FAIL");
              }
          }
      
          public static void main(String[] args) {
              CheckPassFail checker = new CheckPassFail(66);
              checker.checkGrade();
              System.out.println("DONE");
          }
      }
      

答案 1 :(得分:1)

  • GetGrade不是一个类,它是一个功能。因此,应该在没有' new'关键字。
  • 类声明语法错误,不应该是任何括号。
  • 考虑到GradeCheck函数正在做什么,GetGrade函数是无用的(除非你需要它在其他地方)。
  • '系统'应该是' System' (来自java.lang包的内置类)。
  • 类名应以大写字母开头,函数名应以小写字母(标准)开头。

    class CheckPassFail {
        public void gradeCheck(int mark) {
            if(mark >= 50) {
                System.out.println("Pass");
            }
            else {
                System.out.println("Fail");
            }
        }
    
        public static void main(String[] args) {
            CheckPassFail check = new CheckPassFail();
            check.gradeCheck(66);
        }
    }
    

答案 2 :(得分:0)

class CheckPassFail {
    public void gradeCheck(int mark) {
        if(mark >= 50) {
            System.out.println("Pass");
        }
        else {
            System.out.println("Fail");
        }
    }
    public static void main(String[] args) {
        CheckPassFail grade = new CheckPassFail();
        grade.gradeCheck(66);
    }
}

答案 3 :(得分:0)

class CheckPassFail
{
int m;

CheckPassFail(int mark){
    m = mark;
}

public void gradeCheck(int mark){
if(mark >= 50){
System.out.println("Pass");
}
else{
System.out.println("Fail");
}}

public static void main(String[] args) {
CheckPassFail grade = new CheckPassFail(66);
grade.gradeCheck(66);
}}