Это НЕ домашнее задание, но это практика, которую учитель дал нам, чтобы помочь подготовиться к тесту. Но я не буду передавать это учителю. (я надеюсь, что это разрешено)
Он хочет, чтобы пользователь ввел оценку и присвоил ей буквенную оценку. Было бы легко с if заявлениями, но я не могу использовать ЛЮБОЙ! Я должен использовать метод переключения.
Вот мой функциональный класс:
public class Grade {
public double getGrade(int input)
{
double inputGrade;
switch(input)
{
case 1: inputGrade >= 90;
break;
case 2: inputGrade >= 80;
break;
case 3: inputGrade >= 70;
break;
default:
grade = 60;
}
return grade;
}
}
Вот мой тестовый класс:
import java.util.*;
public class TestGrade
{
public static void main(String[] args)
{
Scanner scan = new Scanner(System.in);
int input = scan.nextInt();
Grade lGrade = new Grade();
double finalGrade = lGrade.getGradeSwitch(input);
System.out.println("Your toll is $" + finalGrade);
}
}
Я просто недостаточно программировал, чтобы иметь этот аналитический ум. Я пытался завершить его, я просто не нашел способ преобразовать пользовательский ввод (int) в буквенную оценку (строку) без операторов if.
Я знаю, что это неполно, но это настолько далеко, насколько я мог бы сделать, не делая ошибок.
EDIT: WOW! Спасибо, ребята, я не хочу выбирать один правильный ответ, потому что многие из вас помогли мне!
Это то, чем я закончил (это сработало: D)
public String getGrade(int input)
{
String letterGrade;
switch(input/10)
{
case 9: letterGrade = "A";
break;
case 8: letterGrade = "B";
break;
case 7: letterGrade = "C";
break;
case 6: letterGrade = "D";
default:
letterGrade = "F";
}
return letterGrade;
}