首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >小数二进制(java.lang.NumberFormatException)

小数二进制(java.lang.NumberFormatException)
EN

Stack Overflow用户
提问于 2013-11-18 13:52:57
回答 2查看 693关注 0票数 0

我试着做一个小程序,把十进制转换成二进制。我的程序在int < 1024中运行得很好。如果输入1024或更高版本,则会出现以下错误:

线程“主”java.lang.NumberFormatException.forInputString(Unknown中的异常:用于输入字符串:"10000000000“在ConvertoBinary.binaryform(ConvertoBinary.java:35) at ConvertoBinary.main(ConvertoBinary.java:20)时位于java.lang.Integer.parseInt(未知源)在java.lang.Integer.parseInt(未知源)处

这是我的javacode:

代码语言:javascript
运行
复制
import java.util.Scanner;

public class ConvertoBinary {

    public static void main(String[] args) {

        int number; 

        Scanner scanner = new Scanner(System.in);

        System.out.println("Geben sie eine positive Dezimalzahl ein:");
        System.out.print("Dezimal: ");
        number=scanner.nextInt();

        if (number <=0)
            System.out.println("Error: Keine positive Dezimalzahl erkannt");
        else { 

            System.out.print("Binär: ");
            System.out.print(binaryform(number));
        }
        scanner.close();
    }

    public static int binaryform(int number) {

       String rest = "";

       while (number > 0) {
           rest = number%2 + rest;
           number = number/2;

       }

      number = Integer.parseInt(rest);
      return number;
    }
}
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-11-18 14:00:11

您正在使用int返回结果,该结果超出了Integer.MAX_VALUE的限制。您应该返回结果String而不是int

代码语言:javascript
运行
复制
public static String binaryform(int number) {

   String rest = "";

   while (number > 0) {
       rest = number%2 + rest;
       number = number/2;

   }

  //number = Integer.parseInt(rest); Commented it
  return rest;
}
票数 2
EN

Stack Overflow用户

发布于 2013-11-18 14:01:11

"10000000000",此二进制格式太大,无法转换并适合于int。整数可以是Integer.MAX_VALUE的最大值,即2147483647。但是,Integer类提供了一个有用的函数Integer.toBinaryString(int),可以将给定的整数转换为二进制字符串。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20049502

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档