【问题标题】:outputting numbers in order using loops in java在java中使用循环按顺序输出数字
【发布时间】:2020-10-04 17:05:29
【问题描述】:

输出应如下所示,每次递增时数字都会切换

1
22
333
4444
55555
666666

我的看起来和上面的完全不一样

1
11
111
1111
11111
111111


我不知道每次 x 在我的代码中递增时如何更改数字。我有我的代码,但任何人都可以为我解决这个问题或帮我解决它。

public class Loom {

    public void numbersloop() {

        int v = 1;
        char z = '1';
        while (v <= 6) {
            int x = 1;
            while (x <= v) {
                System.out.print(z);
                x += 1;
            }
            v += 1;
            System.out.println();
        }
    }


    public static void main(String[] args) {
        Loom n = new Loom();
        n.numbersloop();
    }

}

【问题讨论】:

    标签: java loops for-loop while-loop


    【解决方案1】:

    你应该改变你的嵌套循环,所以不是打印 z 的值,而是打印 x 的值(周期性变化的变量)。

    【讨论】:

      【解决方案2】:

      你忘了增加z

      v += 1; z += 1;
      

      P.S.如果你使用for循环会更简单:

      public void numbersloop() {
          for (int row = 1; row <= 6; row++) {
              for (int col = 0; col < row; col++)
                  System.out.print(row);
              System.out.println();
          }
      }
      

      【讨论】:

      • 请允许我纠正你的英语。 如果你使用for循环会更简单
      【解决方案3】:

      从 Java 11 开始可以使用 String repeat()

      查看此类输出的使用 String repeat():

      public static void main(String[] args) {
          for(int i = 1; i <= 6; i++) {
              System.out.println(String.valueOf(i).repeat(i));
          }
      }
      

      输出:

      1
      22
      333
      4444
      55555
      666666
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-04-22
        • 1970-01-01
        • 1970-01-01
        • 2019-11-10
        • 2021-01-03
        • 2023-02-04
        • 2022-06-10
        • 2023-03-28
        相关资源
        最近更新 更多