为了账号安全,请及时绑定邮箱和手机立即绑定

为什么我的这个代码没有捕捉到异常?


Main:

package com.imooc;
public class Main {

    public static void main(String[] args){

        Book book = new Book();

        book.input();
    }

}

BookInputError:

package com.imooc;

class BookInputError extends Exception {
    BookInputError()
    {
        super();
    }
}

Book:

package com.imooc;
import java.util.Scanner;

public class Book {

    public void input () {

        String name;

        String number;

        Scanner scanner = new Scanner(System.in);

        name = scanner.nextLine();

        number = scanner.nextLine();

        try {
            for (int i = 0; i <= number.length()-1; i++) {
                if(number.charAt(i) < '0' && number.charAt(i) > '9') {
                    throw new BookInputError();
                }
            }

        } catch (BookInputError bookInputError) {
            System.out.println("input error");
        }

        System.out.println(name+number);

    }


}

输入实例:

8989
uuu

这个我觉得应该抛出异常,结果没有。

正在回答

1 回答

if(number.charAt(i) < '0' || number.charAt(i) > '9')

逻辑关系错了?这么简单的问题我都没看出来 :(

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么我的这个代码没有捕捉到异常?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信