java - 数组未正确设置值

标签 java arrays

前 4 个值已在新数组中正确设置。这与我的变量“count”设置不正确有关。该程序的目标是简单地获取偶数,并将它们放入一个新数组中。

我添加了 4 作为测试,这似乎工作完美,但我不认为这是这里的问题。

 int[] list = {8,5,4,11,12,2,1,3,10,6,7};

    int count = 0;
    int gr = 0;

    for(int n=0; n<list.length; n++)
    {
        if(list[n] % 2 == 0)
        {
            count++;
        }
    }
    int[] evn = new int[count];

    for(int k = 0; k<=count; k++)
    {
        if(list[k] % 2 == 0)
            evn[gr++] = list[k];
    }
 return evn;

目前,数组在应该打印“8,4,12,2,10,6”时却打印“8,4,12,2,0,0”

最佳答案

发生这种情况是因为 count 始终小于数组的大小(list.length),因此在第二个 for 循环中,您永远不会迭代到最后数组的。

更改第二个 for 循环以迭代直到数组末尾,如下所示:

for(int k = 0; k < list.length; k++)

关于java - 数组未正确设置值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54241165/

相关文章:

java - 如何计算两个 java.sql.Time 值之间的差异?

java - 如何解码任何硬字符串文字字符(\r\n、& 等)以正确格式化显示?

arrays - 循环中的多个计时器

arrays - 如何将 csv 中的特定元素存储到变量中?

java - 模式更新后 jOOQ 生成类的运行时验证?

java - JVM 如何在内部处理标记接口(interface)?

php - 在php中对数字字符串数组进行排序

arrays - Typescript:过滤条件类型数组并具有正确的返回类型

javascript - 将 json 导出到 CSV 在 angularjs 中不起作用

java - 一次添加多个java数组