簡體   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