0

大家好,我有一个关于异常 try-catch 语句的问题。在我做的一个练习题中,用户输入了一个一定长度的字符串。如果用户输入的字符串长度大于 20,则会引发异常。现在我似乎已经按顺序设置了所有东西,但真正让我困惑的是在 try 块中放入什么。任何人都可以用伪代码或通过解释我需要输入什么来让它运行吗?

另外,我有一个关于我的 .catch 语句的问题catch(StringTooLongException e)。我已经制作了另外两个程序来处理一个继承类和一个使用我创建的名称的类来解决同样的问题,而无需使用 try-catch 语句。这就是它的StringTooLongException来源。我的问题是,你怎么知道要使用什么异常名称?我知道java内置了一般异常,但我只是有点困惑。

谢谢

这是我的代码:

import java.util.Scanner;

public class StringTooLongExceptionModified{

    public static void main(String[] args){
        String input;


        Scanner myScan = new Scanner(System.in);
        System.out.println("Enter a string(DONE to quit): ");
        input = myScan.nextLine();

        while(!input.equals("DONE")){

            try{




            }
            catch(StringTooLongException e){
                System.out.println ("Exceeds string length: " + input);
            }

            System.out.println("Enter a string(DONE to quit): ");
            input = myScan.nextLine();


        }
    }   
}
4

1 回答 1

3

似乎您正在寻找:

try{
    if (input.length() <= 20) {
        // do stuff with your input 
    } else {
        throw new StringTooLongException("'" + input + "' is longer than 20");
    }
} catch(StringTooLongException e){
    System.out.println ("Exceeds string length: " + input);
}
于 2013-05-01T01:03:51.470 回答