花开半夏—— 发表于 2023-1-6 18:24:23

java作业关于异常的求助

编写一个程序,从命令行参数输入5个数作为学生成绩,需对成绩进行有效性判断,若成绩有误则通过异常处理显示错误信息,并将成绩按高到低排序打印输出。(提示:如果输入数据不为整数,要捕获Integer.parseInt()产生的异常,显示“请输入成绩”,捕获输入参数不足5个的异常,显示“请输入至少5个成绩”。

花开半夏—— 发表于 2023-1-6 18:47:45

不知道Integer.parseInt()是什么意思,以及怎么用{:10_245:}

不会起名字的我 发表于 2023-1-6 20:45:16

Integer.parseInt(String) 是把字符串里的数字转为 int 类型,比如 Integer.parseInt("123")的返回值就是 int 型的 123,如果有其他字符则会抛出 NumberFormatException

tiger20100907 发表于 2023-1-7 09:36:53

{:10_277:}啊这......

三体—夜航星 发表于 2023-1-7 09:57:34

谢谢楼主撒币

KeyError 发表于 2023-1-7 11:41:53

本帖最后由 KeyError 于 2023-1-12 18:48 编辑

//error.java;
import java.util.Scanner;
import java.util.Arrays;
public class Error{
    public Error(){
      Scanner sc = new Scanner(System.in);
      int arr[] = new int[]{0,0,0,0,0};
      String input;
      try{
          System.out.println("请输入5位同学的成绩");
            for(int i=0;i<5;i++){
                input = sc.nextLine();
                arr = Integer.parseInt(input);
            }
            Arrays.sort(arr);
            System.out.print("成绩是 ");
            for(int i=arr.length-1;i>=0;i--){
                System.out.print(arr);
                System.out.print(',');
            }
          System.out.print('\n');
      } catch (NumberFormatException e) {
            if(input==""){
                System.out.println("输入不足5个!");
            }else{
                System.out.println("成绩无效!");
            }
      } finally {
            sc.close();
      }
    }
    public static void main(String args){
      Error error = new Error();
    }
}







如果这个答案对你有帮助,请别忘记设置“最佳答案”!
            

花开半夏—— 发表于 2023-1-8 20:17:34

KeyError 发表于 2023-1-7 11:41
如果这个答案对你有帮助,请别忘记设置“最佳答案”!

谢谢大佬{:9_228:}

土豆有的挖 发表于 2023-1-9 19:57:58

6

pyk45535 发表于 2023-1-17 12:35:54

{:10_254:}
页: [1]
查看完整版本: java作业关于异常的求助