繁体   English   中英

添加整数元素以列出JAVA

[英]Adding integer elements to list JAVA

我试图将数字与整数分开,然后将它们放入数组中。

所有元素,除了第一个,都打印为0.有人可以解释为什么会发生这种情况吗?

public class Doom{
    public static void main(String[] args){
        int number = 1234;
        int[] list = new int[5];
        while (number > 0) {

            int x = 0;
            int fork = (number%10);
            System.out.println(fork);
            list[x] = fork;
            x++;
            number = number / 10;
        }
        for (int x : list){
            System.out.println(x);
        }

    }
}

问题是,您声明x循环 ,因此它被重置为0每次。 你想移动int x = 0; 行在while (number > 0) { line,在循环之外。 然后它将被初始化为0只一次,并且每次遍历循环都可以使用x++行为其分配新值。

您继续在循环中重新声明x,导致只有第一个索引具有有意义的数据。 将它移动到循环的外部。

您每次都将x重新初始化为0。 在while循环之外声明它。

你的程序中有很多错误。 最大的一个是你将x归零,然后在while循环中将其递增1。 它会将您的数字存储在同一位置(第0位)。 比较以下代码段并尝试了解您的错误:

public class Doom{
    public static void main(String[] args){
        int number = 1234;
        int[] list = new int[String.valueOf(number).length()];
        int x = 0;
        while (number > 0) {        
            int fork = (number%10);
            System.out.println(fork);
            list[x] = fork;
            x++;
            number = number / 10;
        }
        for (int y : list){
            System.out.println(y);
        }

    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM