有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

在Java中打印1到100之间的小数字

我是Java新手,这是一个简单的问题,但我在打印1到100之间的小数字时遇到了困难。小数字是那些小于20的数字,我希望我的程序为每个小数字打印“小x”

当我运行这个程序时,我并没有得到我应该得到的东西,我只是得到了100次“小x”

这是我的代码:

class ExerciseA {
 public static void main(String[] args) {
    int x = 1;
    while ( x  <  100 ) {
        x = x + 1;
        if( x > 20) {
         System.out.println("small x");
      }
    }
  }
}

共 (2) 个答案

  1. # 1 楼答案

    你可以用更匹配的for loop样式写下这样的循环:

    for (int i = 1; i <= 100; i++) {
      if (isSmall(i)) {
         System.out.println("small i");
      }
    

    通过在自己的方法中加入检查“这是一个小数字”来使用一些“重新分解”:

    private boolean isSmall(int i) {
      return i < 20;
    }
    

    使用这种小方法是你应该尽快习惯的——因为它有助于“隔离”某些功能。我做的另一个改变是:在计算机科学中,整数的变量通常被称为“I,j,k”。。。等等而x,y。。。就是浮点数

    当然,你的比较是错误的——如果你想要小于20的数字,那么你就必须这么说(i<;20)

  2. # 2 楼答案

    >意味着更大,但你想要更小。所以使用<。代码中的另一件事是,1不会被打印,因为它在打印之前会被递增。这应该是:

    int x = 0;
    while ( x  <  100 ) {
        x++; // shorter than x = x + 1;
        if (x < 20) {
            System.out.println("small x");
           //System.out.println("small " + x); //if want to print like small 1, small 2 etc.
      }
    }