如何自动创建数组

How to auto create arrays

您好!那么问题来了

我们得到了一个包含很多数字的 file.txt(我们假设数字大于 1000)。在第一行我们可以看到数字的数量。接下来的行包含数字(1 行 = 1 个数字)。所以我们需要编写一个代码来自动填充所有这些数字的数组。我们不允许用超过 100 个元素填充一个数组,因为它会破坏我们的 PC(我在某处读过)。

file.txt示例:

5
78
67
56
45
23

我不知道如何根据我们拥有的数字数量自动创建数组。

我将不胜感激。

P。 S.请不要写和建议非常困难的结构,我不会理解它们,因为我是编程初学者:D

int[] array = new int[size];

其中 size 是文本文件第一行的数字。 这就是你创建数组的方式,你不必在 compile 时知道数组的 size,我们可以只为 size.

使用变量

此外,不确定您在哪里听说过大小大于 100 的数组会毁坏您的计算机,那是不正确的!

  1. 读取第一行并将结果转换为您存储到 count 的数字。
  2. 然后添加这一行:int [] array = new int [count];
  3. 接下来设置一个 for 循环:for( var i = 0; i < count; ++i ) 在这个循环中,您读取当前行,将值转换为数字并将其存储到 array [i].

这个解释够简单吗?

具体的Java代码,还是自己动脑子吧,不然看不懂永远改不了……


如果这个“100 个条目”限制是相关的,您创建一个数组列表 (List<int[]> arrays) 并且代码序列看起来有点不同:

  1. 获取文件中的数字数量。
  2. 设置一个 while 循环:while( count > 100 ).
  3. 在该循环中,您为 100 个值创建一个数组并将其存储到列表中:
    int [] array = new int [100];
    arrays.add( array );
    
    进一步阅读接下来的 100 行,将值转换为数字并将它们存储到 array [i];为此,您使用上面的 for 循环。
  4. while 循环中的最后一个操作是这样的:count -= 100;
  5. while 循环之后,您从分隔线上方添加代码,并添加一项:创建数组后,您需要在开始 [= 之前​​将其添加到数组列表中13=]循环。