一、异常的作业 1. 自定义异常类 属性为String字符串msg,表示提示信息 构造方法含有一个整型参数,当抛出该异常类对象时,利用该参数以及提示信息形成字符串msg 2. 设计类,属性为数组,表示任意一批整型数据;方法有构造方法以及查找方法 class T{ int data[]; T(int data[]) { } int find(int x) throws 异常类 { 在data中查找数据x,如找到则返回下标,找不到抛出异常类的对象 } } 3. 编写主类,完成运行测试
时间: 2024-01-30 17:03:57 浏览: 57
好的,这是您的第一个问题。下面是我的回答:
可以按照以下步骤来实现您的需求:
1. 自定义异常类,如下所示:
```
public class MyException extends Exception {
private String msg;
public MyException(int code) {
switch (code) {
case 1:
msg = "数据为空!";
break;
case 2:
msg = "未找到指定数据!";
break;
default:
msg = "未知错误!";
break;
}
}
@Override
public String getMessage() {
return msg;
}
}
```
2. 设计类T,如下所示:
```
public class T {
private int[] data;
public T(int[] data) {
this.data = data;
}
public int find(int x) throws MyException {
if (data == null || data.length == 0) {
throw new MyException(1);
}
for (int i = 0; i < data.length; i++) {
if (data[i] == x) {
return i;
}
}
throw new MyException(2);
}
}
```
3. 编写主类,完成运行测试,如下所示:
```
public class Main {
public static void main(String[] args) {
int[] data = {1, 2, 3, 4, 5};
T t = new T(data);
try {
int index = t.find(3);
System.out.println("找到指定数据,下标为:" + index);
} catch (MyException e) {
System.out.println("发生异常:" + e.getMessage());
}
}
}
```
运行结果为:
```
找到指定数据,下标为:2
```
阅读全文