【问题标题】:Enhance loop not print what I expected [duplicate]增强循环不打印我的预期[重复]
【发布时间】:2021-09-19 18:41:09
【问题描述】:
public class Main {
        public static void main (String[] args) {

                //prints 000
                int[] num = new int[3];
                for(int i : num)
                        System.out.print(num[i]);

                int x = 0;
                num[x] = 2;
                System.out.println();

                //enhance for loops prints 022???
                for(int c : num)
                        System.out.print(num[c]);

                //prints 200
                System.out.println();
                System.out.print(num[0]);
                System.out.print(num[1]);
                System.out.print(num[2]);

        }
}

中间的增强循环应该打印 200 而不是打印 022? 有人能解释一下它是如何得到 022 的吗?

【问题讨论】:

    标签: java loops


    【解决方案1】:

    改变

    for(int c : num)
        System.out.print(num[c]);
    

    for(int c : num)
        System.out.print(c);
    

    因为c在这里代表num[0]num[1]num[2]...这就是增强的for循环的用途。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-04
      • 2020-08-09
      • 2013-05-13
      • 2015-12-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多