看别人用for循环来做 有一点小问题

来源:4-15 编程练习

X我思故我在

2017-09-24 16:48

public class HelloWorld{
public static void main(String[] args){
int num = 999;
int count = 0;
  for(int i=1;i<=100000000;i*=10){
      if(num/i!=0){
          count++;
        }
   }
System.out.println("它是个"+count+"位的数!");
}
}

运行输出是对的 但在for(int i=1;i<=100000000;i*=10)这里 i*=10 这里理解不了是
什么意思


写回答 关注

3回答

  • _好吗好的
    2017-09-25 21:43:59

    想法不错 可怜我想半天连基本的解题思路都没有

  • 爱吃零食的臭居居
    2017-09-25 19:17:39

    i=i*10; 

    假如i =5 不满足条件 要升级为2位数 然后继续比较 然后升级三位数,这样循环次数少。 就像上面的朋友说的int不能存储太大的数 所以咱们给他每次循环扩大十倍 这样省时省力

  • ECO_BIN
    2017-09-24 16:56:32

    int不能储存太大的数

    X我思故我在

    int只能储存九位数 这我知道但我的问题点不在这 而是i*=10这里怎么。理解。

    2017-09-24 17:22:50

    共 1 条回复 >

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

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

1165172 学习 · 17581 问题

查看课程

相似问题