511111,。, 2022-05-10 17:09 采纳率: 100%
浏览 116
已结题

字符串转换成double型数据

原问题:从命令行输入一个字符串,将该字符串转换为double型数据,当数据不在【0,100】之间时抛出一个异常,采用适当的机制来捕获并
处理异常。可以用现成的异常也可以自定义异常。
我写的垃圾代码有啥错误,运行不了,请各位指导一下

package ex_8;

import java.util.InputMismatchException;

import java.util.Scanner;

public class IntegerExcep {

public static void main(String[] args) {
    // TODO Auto-generated method stub
     Scanner in = new Scanner(System.in);
        try {
            System.out.print("请输入一个数字:");
            String str=in.next();
            double d=Double.parseDouble("str");
            System.out.println("转换后:"+ d);
        }
        catch(InputMismatchException e1) {
            System.out.println("异常1:输入不在0-100内!");
        }
        finally {
            in.close();
            }
}

}

  • 写回答

5条回答 默认 最新

  • 吕布辕门 新星创作者: 后端开发技术领域 2022-05-10 17:20
    关注

    你没有抛异常

    
    public static void main(String[] args) {
        // TODO Auto-generated method stub
         Scanner in = new Scanner(System.in);
            try {
                System.out.print("请输入一个数字:");
                String str=in.next();
                double d=Double.parseDouble("str");
                System.out.println("转换后:"+ d);
               if(d<0||d>100){
                       throw InputMismatchException();
               }
            }
            catch(InputMismatchException e1) {
                System.out.println("异常1:输入不在0-100内!");
            }
            finally {
                in.close();
                }
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

问题事件

  • 系统已结题 5月20日
  • 已采纳回答 5月12日
  • 创建了问题 5月10日