java - 如果作为参数传递的数组中的任何值小于 0,则异常
问题描述
尝试:给定示例代码 HW7C 如果作为参数传递的数组中的任何值小于 0,则更改代码以引发 IllegalArgumentException 异常。更改声明,以便调用此函数的程序员被迫处理此 IllegalArgumentException。
(不标记为不正确,出现为 HW7C 不正确)到目前为止尝试的代码:
public int HW7C (int numbers[]) {
//iterate through all elements in numbers array
if(numbers.length > 0 ) {
for (int number : numbers) {
if(number < 0) {
throw new IllegalArgumentException();
}
}
}
return 0;
}
解决方案
您必须抛出已检查的异常。如果必须命名抛出的异常,IllegalArgumentException
则创建您自己的异常类,该类扩展Exception
并简单地命名它IllegalArgumentException
。
package org.yourorgname.exception;
public class IllegalArgumentException extends Exception {
//class body
}
public int HW7C (int numbers[]) throws org.yourorgname.exception.IllegalArgumentException {
//iterate through all elements in numbers array
if(numbers.length > 0 ) {
for (int number : numbers) {
if(number < 0) {
throw new org.yourorgname.exception.IllegalArgumentException();
}
}
}
return 0;
}
推荐阅读
- python - 抓取我的学校网站以获取成绩
- amazon-web-services - 安全组创建导致 cloudformation 模板出错
- airflow - 气流连接 __init__() 缺少 1 个必需的位置参数:'api_version'
- php - Laravel Livewire 从字符串中获取关系数据
- flutter - 使用 bloc 问题更新文本输入
- python-3.x - 如何将用户输入导入要为其创建表的字典
- linux - 我需要打印行号以及用户提示的内容,怎么做?我尝试了以下代码,但它不起作用
- sql - 如何在 Spark-Sql 的正则表达式中添加日期验证
- c++ - 检查方程组是否有解
- javascript - 如何使用 Typescript 使固定的 Promises 数组中的项目成为可选