为什么11位数用long定义还是超出范围

来源:4-15 编程练习

qq_南山以南雪纷飞_0

2016-07-03 22:14

int x = 999; int sum  = 0; for(int i = 10;i <= 999999999;i *= 10){    if(x / i != 0){        sum++;    }else{        sum++;        break;    } } System.out.println("它是个"+sum+"位的数!"); } 如果我想测试10位数以上的时候,int i的范围就不够了,可是为什么用long也还是不行,只是11位数就不行了?

写回答 关注

1回答

  • qq_战神_1
    2016-07-03 22:33:03

    long和int类型的范围是一样的-2,147,483,648 to 2,147,483,647

    看看吧只有10维数

    qq_南山以...

    long的范围不是64位:-9223372036854775808到9223372036854775807么,网上百度了好多都是这么说的ORZ

    2016-07-04 13:39:03

    共 1 条回复 >

Java入门第一季(IDEA工具)升级版

0基础萌新入门第一课,从Java环境搭建、工具使用、基础语法开始

1165172 学习 · 17581 问题

查看课程

相似问题