用Java写编写一个程序进行一个数组元素值的录入,能够控制录入数组元素的个数,对录入数组元素统计其正数,负数和零的个数。自定义一个异常类ArraysElementException,当输入的值不是整数时,抛出该异常类对象,程序将捕捉这个异常对象,并调用执行该异常类对象的toString()方法, //该方法返回“**不是整数“的字符串,hasNextInt():判断输入是否为整数,若是返回True,不是返回fasle
时间: 2024-02-27 08:55:20 浏览: 55
好的,以下是Java程序的代码实现:
```
import java.util.Scanner;
class ArraysElementException extends Exception {
public String toString() {
return "不是整数";
}
}
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入数组元素个数:");
int n = scanner.nextInt();
int positiveCount = 0, negativeCount = 0, zeroCount = 0;
int[] arr = new int[n];
for (int i = 0; i < n; i++) {
System.out.print("请输入第" + (i + 1) + "个元素:");
try {
if (scanner.hasNextInt()) {
int num = scanner.nextInt();
if (num > 0) {
positiveCount++;
} else if (num < 0) {
negativeCount++;
} else {
zeroCount++;
}
arr[i] = num;
} else {
throw new ArraysElementException();
}
} catch (ArraysElementException e) {
System.out.println(e.toString());
i--;
scanner.next();//清空缓存区
}
}
System.out.println("正数个数:" + positiveCount);
System.out.println("负数个数:" + negativeCount);
System.out.println("零的个数:" + zeroCount);
}
}
```
运行结果如下:
```
请输入数组元素个数:5
请输入第1个元素:a
不是整数
请输入第1个元素:2
请输入第2个元素:-3
请输入第3个元素:0
请输入第4个元素:5
请输入第5个元素:-6
正数个数:2
负数个数:2
零的个数:1
```
阅读全文