gpt4 book ai didi

java - 将数组传递给构造函数

转载 作者:太空宇宙 更新时间:2023-11-04 08:30:10 25 4
gpt4 key购买 nike

我必须为作业编写两个文件,一个客户端文件将从用户接收两组数据。第一组是申请人 ID (int) 列表,第二组是 y 或 n (char)。需要将数据集输入到两个数组中。然后,我必须创建一个类文件,将这两个数组接收到构造函数中,然后该构造函数将运行一些特定的方法来验证答案是否正确、有多少人回答正确以及最后哪些候选人收到了最正确的答案。

我只有两个问题:

1st - 将输入到第二个数组的第一行数据将是答案键。是否可以在申请人 ID 数组的开头添加 0,以便两个数组匹配(ID#{1} 到答案{1} 等)?

第二 - 通过从客户端文件调用类文件,我是否在两者中声明数组?即:

客户端文件:

int[] id = new int[];
char[] answer = new char[];
ValidateMark importClerk = new ValidateMark(id, answer);

类构造函数:

public ValidateMark(int number[], char marks[])

提前致谢

最佳答案

我将假设数据结构是必需的,并且被指定为作业的一部分,并且除非另有要求,否则不会提供任何关于备用结构的输入。

第一个问题:

是的,你可以,但不是以你想的方式。数组一旦声明,就会占用静态数量的内存和静态数量的元素。因此,您不能将项目“插入”到已声明和分配的数组的开头。这是一种动态集合类型的行为,例如列表。

如果您无法控制数组的声明/分配,那么您唯一的选择就是将数组的内容复制到包含空 0 索引的新数组。

int[] array = { 0, 1, 2, 3 };
int newArray = new int[array.length + 1];

newArray[0] = 0;
for(int i = 1; i < newArray.length; i++)
{
newArray[i] = array[i - 1];
}

另一方面,如果您是制作这个初始数组的人,那么只需将大小 +1 变大并在开头添加一个零,问题就解决了。

第二个问题:

是否应在“客户端文件”(无论是什么)中声明数组,实际上取决于您。

关于java - 将数组传递给构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7700576/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com