A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© zhangganxi 中级黑马   /  2016-7-15 23:24  /  535 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

package com.Demo;

import java.math.BigDecimal;
import java.math.BigInteger;
import java.util.Scanner;

//键盘录入int类型的整数
/*
* 分析:
* 创建键盘录入对象
* 将键盘录入的结果存储到String类型的字符串中,存储int类型中有不符合条件的直接报错,无法进行后续判断
* 键盘录入的结果换成int类型,是正确还是错误
* 正确的直接转换
* 错误的要进行对应判断
*/
public class Demo1 {
        public static void main(String[] args) {
                 Scanner sc = new Scanner(System.in);
                 System.out.println("请输入一个数字:");       
                 while(true){
                         String s = sc.nextLine();
                         try{
                                 int num = Integer.parseInt(s);
                                 System.out.println(Integer.toBinaryString(num));
                                 break;
                         }catch (Exception e) {
                                try {
                                        new BigInteger(s);
                                        System.out.println("你录的是一个过大整数:");
                                } catch (Exception e1) {
                                        try {
                                                new BigDecimal(s);
                                                System.out.println("你录的是小数:");
                                        } catch (Exception e2) {
                                               
                                                System.out.println("注意非法字符:");
                                        }
                                }
                        }
                 }
        }
}

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马