andrew9991 2016-04-17 02:15 采纳率: 100%
浏览 1370
已采纳

这个要怎么改才能在输入的数不是二进制字符的时候提示输入错误呢

比如我输入99 或者abc都提示 Not a binary

import java.util.Scanner;
public class Binary {

public static int toDecimal(String b) {

    int decimal = Integer.parseInt(b,2);
    return decimal;
}


public static boolean isBinary(String b) {

    int inputNum = Integer.parseInt(b);

    while(inputNum != 0){
        if(inputNum % 10 > 1){
            return false;
        }
        inputNum = inputNum / 10;
    }
    return true;


}

public static void main(String[] args) {


    System.out.print("Enter binary: ");
    Scanner in = new Scanner(System.in);
    String binaryNum = in.next();
    isBinary(binaryNum);
    int outputDecimal = toDecimal(binaryNum);
    System.out.print("\n"+ outputDecimal +" in decimal");
}

}

  • 写回答

1条回答 默认 最新

  • 毕小宝 博客专家认证 2016-04-17 02:23
    关注

    就是在你调用isBinary后添加一句判断语句就可以了啊。

     boolean isBinary = isBinary(binaryNum);
            if(isBinary){
                System.out.print("\n" + binaryNum + "is Binary");
            }else{
                System.out.print("\n" + binaryNum + "is not Binary.");
            }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥50 永磁型步进电机PID算法
  • ¥15 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?
  • ¥88 找成都本地经验丰富懂小程序开发的技术大咖
  • ¥15 如何处理复杂数据表格的除法运算
  • ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
  • ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
  • ¥200 uniapp长期运行卡死问题解决
  • ¥15 latex怎么处理论文引理引用参考文献
  • ¥15 请教:如何用postman调用本地虚拟机区块链接上的合约?
  • ¥15 为什么使用javacv转封装rtsp为rtmp时出现如下问题:[h264 @ 000000004faf7500]no frame?