Java 迭代一个数组,得到10的所有倍数

Java 迭代一个数组,得到10的所有倍数,java,arrays,for-loop,Java,Arrays,For Loop,我对Java非常陌生,我试图迭代一个整数数组,得到所有10的倍数。我的代码得到的是数组中的元素打印100次,因为这是数组的长度。我知道这很基本,但我就是想不出问题所在。这就是我所拥有的: import java.util.Arrays; public class ArrayThings { public static void main(String[] args) { int[] myFirstArray = new int[100]; for (i

我对Java非常陌生,我试图迭代一个整数数组,得到所有10的倍数。我的代码得到的是数组中的元素打印100次,因为这是数组的长度。我知道这很基本,但我就是想不出问题所在。这就是我所拥有的:

import java.util.Arrays;

public class ArrayThings {
    public static void main(String[] args) {
        int[] myFirstArray = new int[100];

        for (int i = 0; i < myFirstArray.length; i++) {
            myFirstArray[i] = i;
        }

        for (int i : myFirstArray) {
            if (i % 10 == 0) {
                myFirstArray[i] = i;
            } else {
                i++;
            }

            System.out.println(Arrays.toString(myFirstArray));
        }
    }
}
导入java.util.array;
公开课安排{
公共静态void main(字符串[]args){
int[]myFirstArray=新int[100];
for(int i=0;i
为什么需要一个数组来打印10的倍数?你可以简单地做:

 public class ArrayThings{
          public static void main(String[]args){
            for(int i=0; i<101; i++) {
                if(i%10==0 && i != 0){
                System.out.println(i);
                }
            }

        }}
公共类数组{
公共静态void main(字符串[]args){

对于(int i=0;i为什么需要一个数组来打印10的倍数?您可以简单地执行以下操作:

 public class ArrayThings{
          public static void main(String[]args){
            for(int i=0; i<101; i++) {
                if(i%10==0 && i != 0){
                System.out.println(i);
                }
            }

        }}
公共类数组{
公共静态void main(字符串[]args){

对于Java-8中的(int i=0;i),可以按如下方式执行:

int result[] = IntStream.range(1, 100).filter(e -> e%10==0).toArray();
System.out.println(Arrays.toString(result));

在Java-8中,您可以按如下方式执行:

int result[] = IntStream.range(1, 100).filter(e -> e%10==0).toArray();
System.out.println(Arrays.toString(result));

我想这就是你想要做的:

public class ArrayThings {
    public static void main(String[] args) {
        int[] myFirstArray = new int[100];

        // array generation
        for (int i = 0; i < myFirstArray.length; i++) {
            myFirstArray[i] = i;
        }
        // printing multiples of 10
        for (int i = 0; i < myFirstArray.length; i++) {
            if (i % 10 == 0 && i != 0) {
                System.out.println(myFirstArray[i]);
            }
        }
    }
}
公共类数组{
公共静态void main(字符串[]args){
int[]myFirstArray=新int[100];
//阵列生成
for(int i=0;i
我想这就是你想要做的:

public class ArrayThings {
    public static void main(String[] args) {
        int[] myFirstArray = new int[100];

        // array generation
        for (int i = 0; i < myFirstArray.length; i++) {
            myFirstArray[i] = i;
        }
        // printing multiples of 10
        for (int i = 0; i < myFirstArray.length; i++) {
            if (i % 10 == 0 && i != 0) {
                System.out.println(myFirstArray[i]);
            }
        }
    }
}
公共类数组{
公共静态void main(字符串[]args){
int[]myFirstArray=新int[100];
//阵列生成
for(int i=0;i
这应该行得通

import java.util.Arrays;

public class ArrayThings {
    public static void main(String[] args) {
        int[] myFirstArray = new int[100];
        int[] myMultiplesArray = new int[9];

        for (int i = 0; i < myFirstArray.length; i++) {
            myFirstArray[i] = i;
        }

        int j = 0;

        for (int i : myFirstArray) {
            if (i % 10 == 0) {
                myMultiplesArray[j] = i;
                j++;
            } 

        }
        System.out.println(Arrays.toString(myMultiplesArray));
    }
}
导入java.util.array;
公开课安排{
公共静态void main(字符串[]args){
int[]myFirstArray=新int[100];
int[]myMultiplesArray=新int[9];
for(int i=0;i
这应该行得通

import java.util.Arrays;

public class ArrayThings {
    public static void main(String[] args) {
        int[] myFirstArray = new int[100];
        int[] myMultiplesArray = new int[9];

        for (int i = 0; i < myFirstArray.length; i++) {
            myFirstArray[i] = i;
        }

        int j = 0;

        for (int i : myFirstArray) {
            if (i % 10 == 0) {
                myMultiplesArray[j] = i;
                j++;
            } 

        }
        System.out.println(Arrays.toString(myMultiplesArray));
    }
}
导入java.util.array;
公开课安排{
公共静态void main(字符串[]args){
int[]myFirstArray=新int[100];
int[]myMultiplesArray=新int[9];
for(int i=0;i
您应该将打印语句移到for循环之外,这就是导致它打印100次的原因


另外,您当前的代码似乎什么也不做。您正在检查i的模,然后将myFirstArray的值设置为i的值。myFirstArray在i的当前值已经等于i,正如在第一个循环中初始化的那样。

您应该将打印语句移到for循环之外,这就是导致它变为p的原因打印100次


另外,您当前的代码似乎什么也不做。您正在检查i的模,然后将myFirstArray的值设置为i的值。myFirstArray在i的当前值已经等于i,正如在第一个循环中初始化的那样。

所以您想要一个包含100个元素的数组,这是10的100个前倍数?不,我想要的是mu1到99之间的10的ltiples。要得到10的Mutliple,你根本不需要数组……在这个循环中,
for(int i:myFirstArray)
你增加i-
i++
。不要这样。你认为
myFirstArray[i]=i;
i++;
在第二个循环中做什么?(提示:答案是零。)所以你想要一个100个元素的数组,这是10的前100个倍数?不,我想要1到99之间的10的倍数。要得到10的倍数,你根本不需要数组……在这个循环中,
for(int i:myFirstArray)
你增加了i-
i++
。你不这样认为
myFirstArray[i]=i;
i++;
在第二个循环中执行?(提示:答案是否定的。)它是不正确的变量!
i
变量是由为每个循环构造分配的它是不正确的变量!
i
变量是由为每个循环构造分配的