为了账号安全,请及时绑定邮箱和手机立即绑定

为什么数组中的第一个元素被赋值为 0.0?注意:不是问INDEX,是问价值

为什么数组中的第一个元素被赋值为 0.0?注意:不是问INDEX,是问价值

一只甜甜圈 2023-12-13 14:27:28
这是高中作业。在我的第一个 for() 循环中,我根据用户输入构建了一个数组。但是,数组的第一个值被跳过并设置为 0.0我已经彻底追踪了代码,但无济于事。import java.util.Scanner;import java.lang.Math;public class TestProject {    public static void main(String[] args)    {        Scanner scan = new Scanner(System.in);        System.out.println("How long do you want the array?");        int length = scan.nextInt();        if(Math.abs(length) != length)        {            System.out.println("Not a valid length!");        }        else        {            double[] array = new double[length];            for(int i = 0; i < length-1; i++)            {            System.out.println("Enter a number");            array[i] = scan.nextDouble();            }            double[] finalarray = new double[array.length];            int finalarraycount = 1;            double flag = -1;            for(int x = 0; x<(array.length -1); x++)            {                if(array[x] > flag)                {                    finalarray[finalarraycount] = array[x];                    flag = array[x];                    finalarraycount++;                }            }            System.out.print("Your array is {");            for(int y = 0; y<finalarray.length; y++)            {                System.out.print(finalarray[y]);                System.out.print(", ");            }            System.out.println("}");        }    }}我想将由可变长度确定的指定数量的值输入到数组中,然后按从小到大的顺序打印数组。相反,它会跳过索引[0],并将其设置为 0.0。
查看完整描述

3 回答

?
慕桂英4014372

TA贡献1871条经验 获得超13个赞

finalarraycount应该初始化为0,而不是1



查看完整回答
反对 回复 2023-12-13
?
烙印99

TA贡献1829条经验 获得超13个赞

int finalarraycount = 1;

finalarray[finalarraycount] = array[x];

这就是为什么。您将其初始化为 1,但数组中的第一个索引为 0。如果为 0,则会影响数组中的第一个索引。


查看完整回答
反对 回复 2023-12-13
?
潇潇雨雨

TA贡献1833条经验 获得超4个赞

这只是标准编译器行为。finalarray[0]没有被第二个 for 循环设置为任何内容。因此,Java 将其初始化为 0.0,如下所述: https: //docs.oracle.com/javase/specs/jls/se8/html/jls-4.html#jls-4.12.5


查看完整回答
反对 回复 2023-12-13
  • 3 回答
  • 0 关注
  • 144 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信