args数组赋值的错误

强颜欢笑 提交于 2019-12-22 09:59:38

异常处理练习中对args数组赋值的错误

(自定义异常类略)

package ExceptionExer;

import java.util.Scanner;

/*
 * 编写应用程序EcmDef.java,接收命令行的两个参数,要求不能输入负数,计算两数相除。
对 数 据 类 型 不 一 致 (NumberFormatException) 、 缺 少 命 令 行 参 数(ArrayIndexOutOfBoundsException)、
除0(ArithmeticException)及输入负数(EcDef 自定义的异常)进行异常处理。
提示:
(1)在主类(EcmDef)中定义异常方法(ecm)完成两数相除功能。
(2)在main()方法中使用异常处理语句进行异常处理。
(3)在程序中,自定义对应输入负数的异常类(EcDef)。
(4)运行时接受参数 java EcmDef 20 10 //args[0]=“20” args[1]=“10”
(5)Interger类的static方法parseInt(String s)将s转换成对应的int值。
如:int a=Interger.parseInt(“314”); //a=314;
 */
public class EcmDef {
	public static void main(String[] args) {
//		Scanner sc = new Scanner(System.in);
//		System.out.println("请输入第一个数字字符串::");
//		args[0] = sc.next();
//		System.out.println("请输入第二个数字字符串::");
//		args[1] = sc.next();
		args[0] = "1";
		args[1] = "2";
		try {
		int a = Integer.parseInt(args[0]);
		int b = Integer.parseInt(args[1]);
		int result = ecm(a, b);
		System.out.println(result);
		}catch(NumberFormatException e) {
			System.out.println("数 据 类 型 不 一 致");
		}catch(ArrayIndexOutOfBoundsException e) {
			e.printStackTrace();
		}catch(ArithmeticException e) {
			System.out.println("除0");
		}catch(EcDef e) {
			System.out.println(e.getMessage());
		}
	}
	public static int ecm(int a,int b) throws EcDef{
		if(a > 0&& b > 0) {
			return a/b;
		}
		throw new EcDef("要输入正数!!!");
	}
}

在此次练习中相对args数组元素进行赋值,发现并不能直接赋值,后来发现只有通过eclipse的该处赋值,遗忘了该知识点。
在这里插入图片描述

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!