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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© songyongpeng 中级黑马   /  2016-2-23 23:50  /  584 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

package com.song.test;

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

public class Test2 {

        /**
         ** 键盘录入一个int类型的整数,对其求二进制表现形式
         * 如果录入的整数过大,给予提示,录入的整数过大请重新录入一个整数BigInteger
         * 如果录入的是小数,给予提示,录入的是小数,请重新录入一个整数
         * 如果录入的是其他字符,给予提示,录入的是非法字符,请重新录入一个整数
         */
        public static void main(String[] args) {
                /*Scanner sc = new Scanner(System.in);
                System.out.println("请你输入一个整数");
               
                while(true){
                        String line = sc.nextLine();
                        try{
                                int num = Integer.parseInt(line);
                                System.out.println(Integer.toBinaryString(num));
                                break;
                        }catch (Exception e) {
                                try{
                                        new BigInteger(line);
                                        System.out.println("录入错误,你录入的是一个过大整数,请重新输入一个整数");
                                }catch (Exception e2) {
                                        try{
                                                new BigDecimal(line);
                                                System.out.println("录入错误,你录入的是一个小数,请重新输入一个整数");
                                        }catch (Exception e1) {
                                                System.out.println("录入错误,你录入的是非法字符,请重新输入一个整数");
                                        }
                                       
                                }
                               
                        }
                       
                }*/
                /*Scanner sc = new Scanner(System.in);//创建键盘录入对象
                System.out.println("请输入一个整数");
               
                while(true){
                        String line = sc.nextLine(); //创建字符串对象接收录入对象
                        try{
                                int num = Integer.parseInt(line);//将字符串转换成整数
                                System.out.println(Integer.toBinaryString(num));//将整数转换成二进制数
                                break;
                        }catch (Exception e) {
                                try{
                                        new BigInteger(line);
                                        System.out.println("你的输入有误,你输入的是过大整数,请重新输入一个整数");
                                }catch (Exception e1) {
                                        try{
                                                new BigDecimal(line);
                                                System.out.println("你的输入有误,你输入的是小数,请重新输入一个整数");
                                        }catch (Exception e2) {
                                                System.out.println("录入错误,你录入的是非法字符,请重新输入");
                                        }
                                }
                        }
                }*/
                /*Scanner sc = new Scanner(System.in);
                System.out.println("请输入一个整数");
               
                while(true){
                        String line = sc.nextLine();
                        try{
                                int num = Integer.parseInt(line);
                                System.out.println(Integer.toBinaryString(num));
                                break;
                        }catch (Exception e) {
                                try{
                                        new BigInteger(line);
                                        System.out.println("录入有误,你录入的是过大整数,请重新录入一个整数");
                                }catch (Exception e1) {
                                        try{
                                                new BigDecimal(line);
                                                System.out.println("录入有误,你录入的是小数,请重新录入一个是整数");
                                        }catch (Exception e2) {
                                                System.out.println("你录入的是非法字符,请重新录入");
                                        }
                                }
                        }
                }*/
                Scanner sc = new Scanner(System.in);
                System.out.println("请你录入一个整数");
               
                while(true){
                        String line = sc.nextLine();
                        try{
                                int num = Integer.parseInt(line);
                                System.out.println(Integer.toBinaryString(num));
                                break;
                        }catch (Exception e) {
                                try{
                                        new BigInteger(line);
                                        System.out.println("111111111111111");
                                }catch (Exception e1) {
                                        try{
                                                new BigDecimal(line);
                                                System.out.println("2222222222222222");
                                        }catch (Exception e2) {
                                                System.out.println("3333333333333333");
                                        }
                                }
                               
                        }
                       
                }
        }

}

1 个回复

倒序浏览
刚开始学
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马