优化这段代码import java.util.Scanner; public class Grades { static class Student { enum Grade {Excellent, Fair, Good, Poor, Failed} static void score2(int g) { if(g/10>=6) { switch (g / 10) { case 10: Grade a = Grade.Excellent; System.out.println(a); break; case 9: Grade b = Grade.Excellent; System.out.println(b); break; case 8: Grade c = Grade.Good; System.out.println(c); break; case 7: Grade d = Grade.Fair; System.out.println(d); break; case 6: Grade e = Grade.Poor; System.out.println(e); break; default: Grade f = Grade.Failed; System.out.println(f); break; } } } public static void main(String[] args) { //输入学生人数 System.out.println("请输入学生数(>1的整数):"); Scanner num = new Scanner(System.in); int number = num.nextInt(); //输入学生成绩 System.out.println("请输入6位学生的Java成绩[0,100](以空格为间隔):"); Scanner sc = new Scanner(System.in);//输入成绩 String str = sc.nextLine(); //将输入数字以空格为界分开,并转为String数组 String[] s = str.split(" "); //String转为int int[] intArr = new int[str.length]; for (int i = 0; i < str.length; i++) { intArr[i] = Integer.parseInt(str[i]); } //遍历数组 for (int i = 0; i < s.length; i++) { //将遍历得到每个数组 用Integer.parseInt方法将String数组转为十进制的数 int grade = Integer.parseInt(s[i]); } for (int i = 0; i < s.length; i++) { System.out.println(s[i]); System.out.println(score2()); } } } }
时间: 2023-04-03 20:03:08 浏览: 116
java代码-import java.util.Scanner;
5星 · 资源好评率100%
这段代码可以进行优化,比如可以将输入学生成绩的部分改为使用循环来输入,而不是一次性输入所有学生成绩。另外,在score2方法中,可以使用if-else语句来代替switch语句,这样可以使代码更加简洁。
阅读全文