编写一个Java应用程序,从键盘输入若干个正整数,如果输入为负数,抛掷自定义的异常
编写一个Java应用程序,使用一个访问数组元素下标超界的语句,人为抛出一个除零错异常,使用try和catch语句捕捉这些异常并输出出错信息。编写一个Java应用程序,从键...
编写一个Java应用程序,使用一个访问数组元素下标超界的语句,人为抛出一个除零错异常,使用try和catch语句捕捉这些异常并输出出错信息。
编写一个Java应用程序,从键盘输入若干个正整数,如果输入为负数,抛掷自定义的异常,捕捉异常后,输出错误信息程序继续运行,直到输入为0时终止运行。
怎么编写啊?要声明2次么,一个是错误,一个是方法? 展开
编写一个Java应用程序,从键盘输入若干个正整数,如果输入为负数,抛掷自定义的异常,捕捉异常后,输出错误信息程序继续运行,直到输入为0时终止运行。
怎么编写啊?要声明2次么,一个是错误,一个是方法? 展开
2个回答
展开全部
package com.kk.language_faculty.exception;
public class TestThrowsException1 {
public static void main(String[] args) {
TestThrowsException1 te = new TestThrowsException1();
te.check(new int[] { 1, 2, -3, 4, 5, 6, 10, -1, });
}
public void check(int[] arr) {
for (int i : arr) {
if (i < 0) {
try {
throw new NegativeArraySizeException(arr);
} catch (NegativeArraySizeException ne) {
System.out.println("发生了异常, 正在处理中..." + ne.toString());
}
} else {
System.out.println("--- " + i + " ---");
}
}
}
}
@SuppressWarnings("serial")
class NegativeArraySizeException extends Exception {
private int[] array;
public NegativeArraySizeException(int[] array) {
this.array = array;
}
public int[] getArray() {
return array;
}
}
/////////////////////////
package com.kk.language_faculty.exception;
/*
* 创建一个类Example,有一个String 型参数的方法---check() ,该方法用来检查参数中是否包含英文字母以外的字符。
* 如果包含,则抛出一个MyException异常。
*/
public class TestThrowsException2 {
public void check(String str) {
char temp = ' ';
for (int i = 0; i < str.length(); i++) {
temp = str.charAt(i);
if ((temp >= 'a' && temp <= 'z') || (temp >= 'A' && temp <= 'Z')) {
System.out.println(temp + " 是字母");
} else {
try {
throw new MyException(str);
} catch (MyException e) {
System.out.println("异常发生!!!字符串 " + e.getContent()
+ " 中由字符 " + temp + " 导致异常!" + e.getMessage());
}
}
}
}
public static void main(String[] args) {
TestThrowsException2 example = new TestThrowsException2();
example.check("aa00bb11cc88dd//ee..ff,,gg--hh==jj((kk))zz");
}
}
/*
* 创建一个异常类,将其命名为MyException,继承自Exception类。其中定义一个字符串成员content.
* 生成一个构造方法对其赋值。并有一个成员方法取得其值。
*/
@SuppressWarnings("serial")
class MyException extends Exception {
private String content;
MyException(String content) {
this.content = content;
}
public String getContent() {
return content;
}
}
public class TestThrowsException1 {
public static void main(String[] args) {
TestThrowsException1 te = new TestThrowsException1();
te.check(new int[] { 1, 2, -3, 4, 5, 6, 10, -1, });
}
public void check(int[] arr) {
for (int i : arr) {
if (i < 0) {
try {
throw new NegativeArraySizeException(arr);
} catch (NegativeArraySizeException ne) {
System.out.println("发生了异常, 正在处理中..." + ne.toString());
}
} else {
System.out.println("--- " + i + " ---");
}
}
}
}
@SuppressWarnings("serial")
class NegativeArraySizeException extends Exception {
private int[] array;
public NegativeArraySizeException(int[] array) {
this.array = array;
}
public int[] getArray() {
return array;
}
}
/////////////////////////
package com.kk.language_faculty.exception;
/*
* 创建一个类Example,有一个String 型参数的方法---check() ,该方法用来检查参数中是否包含英文字母以外的字符。
* 如果包含,则抛出一个MyException异常。
*/
public class TestThrowsException2 {
public void check(String str) {
char temp = ' ';
for (int i = 0; i < str.length(); i++) {
temp = str.charAt(i);
if ((temp >= 'a' && temp <= 'z') || (temp >= 'A' && temp <= 'Z')) {
System.out.println(temp + " 是字母");
} else {
try {
throw new MyException(str);
} catch (MyException e) {
System.out.println("异常发生!!!字符串 " + e.getContent()
+ " 中由字符 " + temp + " 导致异常!" + e.getMessage());
}
}
}
}
public static void main(String[] args) {
TestThrowsException2 example = new TestThrowsException2();
example.check("aa00bb11cc88dd//ee..ff,,gg--hh==jj((kk))zz");
}
}
/*
* 创建一个异常类,将其命名为MyException,继承自Exception类。其中定义一个字符串成员content.
* 生成一个构造方法对其赋值。并有一个成员方法取得其值。
*/
@SuppressWarnings("serial")
class MyException extends Exception {
private String content;
MyException(String content) {
this.content = content;
}
public String getContent() {
return content;
}
}
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
application 1:
public class First {
public static void main(String[] args) {
int[] ary = {1, 2, 3, 4, 5};
for(int i = 0; i <= ary.length; i++){
try{
System.out.println(ary[i]);
}catch(ArrayIndexOutOfBoundsException exp){
throw new ArithmeticException("Divided by zero");
}
}
}
}
---------------------
第二个
import java.util.Scanner;
public class Second {
public static void main(String[] args) {
class MyException extends Exception {
public MyException(String s) {
super(s);
System.err.println(s);
}
}
// second application
while (true) {
System.out.print("Please input a number(0 to exit):");
int input = new Scanner(System.in).nextInt();
if (input == 0) {
System.exit(0);
} else if (input < 0) {
try {
throw new MyException(
"Number inputted can't be less than zero! Please try again(0 to exit)!");
} catch (MyException e) {
continue;
}
}
}
}
}
public class First {
public static void main(String[] args) {
int[] ary = {1, 2, 3, 4, 5};
for(int i = 0; i <= ary.length; i++){
try{
System.out.println(ary[i]);
}catch(ArrayIndexOutOfBoundsException exp){
throw new ArithmeticException("Divided by zero");
}
}
}
}
---------------------
第二个
import java.util.Scanner;
public class Second {
public static void main(String[] args) {
class MyException extends Exception {
public MyException(String s) {
super(s);
System.err.println(s);
}
}
// second application
while (true) {
System.out.print("Please input a number(0 to exit):");
int input = new Scanner(System.in).nextInt();
if (input == 0) {
System.exit(0);
} else if (input < 0) {
try {
throw new MyException(
"Number inputted can't be less than zero! Please try again(0 to exit)!");
} catch (MyException e) {
continue;
}
}
}
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询