我正在尝试创建一个打印出前20个偶数的数组,但我不知道如何让数组打印它们,我只得到一个20的数组。到目前为止这就是我所拥有的写入。
int[] mylist = new int[20];
int even = 0;
while ((even%2 == 0) && (even < 20)){
even++;
}
System.out.println("Element at index 0: " + mylist[0]);
System.out.println("Element at index 1: " + mylist[1]);
System.out.println("Element at index 2: " + mylist[2]);
System.out.println("Element at index 3: " + mylist[3]);
...
编辑:这是我到目前为止所做的:
int[] mylist=new int[20];//establishes the name and length of an array
for (int even=0;even<mylist.length;even++)
{
mylist[even]=even;
if(even%2==0)
System.out.println("Even Element: "+even);
}
然而,不是打印出20个偶数,而是打印1到20之间的偶数。
答案 0 :(得分:0)
您的while循环不会将任何值设置为mylist
。使用java流,您可以按如下方式执行:
int[] result = IntStream.iterate(0, i->i+2).limit(20).toArray();
for (int i : result)
System.out.println(i);
0
2
4
6
8
10
12
14
...
答案 1 :(得分:0)
你正在声明数组,但没有将任何值传递给它和&#34;偶数&#34;变量增加但代码中的值位于&#34; mylist&#34;阵列
这是代码:
int[] myList = new int[20];
//adding the elements into the Array
for(int i=0 ;i<myList.length;i++){
myList[i] =i;
}
for(int j: myList){
if(j%2==0){ // checking for even
System.out.println("even elements:" +j);
}
答案 2 :(得分:0)
就像提到的marcinj一样,你可以使用InteStream并对它应用谓词,并根据需要定义谓词:
public static void main(String[] args) {
IntPredicate isEven = i -> i%2 == 0;
int[] result = IntStream.iterate(0, i -> i+1)
.filter(isEven)
.limit(20)
.toArray();
for (int i : result)
System.out.println(i);
}
在这个例子中,我创建了一个intpredicate,它定义了你的流的值,在这种情况下只使用偶数值:i%2 == 0.
答案 3 :(得分:0)
创建一个包含20个整数的数组,并使用偶数填充数组
创建一个包含20个int元素的数组:
int[] evenNumbers = new int[20];
使用偶数填充数组:
for (int i = 0; i < evenNumbers.length; i++) {
evenNumbers[i] = i*2;
}
打印数组的元素
for (int i = 0; i < evenNumbers.length; i++) {
System.out.println("Element at index " + i + ": " + evenNumbers[i]);
}