Хранение полного массива в узле

#java #arrays #linked-list

#java #массивы #связанный список

Вопрос:

Я пытаюсь сохранить массив целых чисел в узле. Я не получаю узел так, как должен. Любая помощь, которую кто-либо может оказать, будет отличной.

   public void readIn()
  {
  int counter = 1;
     try {
        Scanner inFile = new Scanner(new FileReader("WordProblemData.txt"));
        int times = Integer.parseInt(inFile.next());
        for (int a = 1;a <= times; a  )
        {
           for (int i = 1; i <= 8; i  )
           {
              num[i-1] = Integer.parseInt(inFile.next());
              System.out.println(num[i-1]);

           }
           data = (String)(inFile.next()); 
           System.out.println(data);



           head = new DateStampNode(data,num,head);
        }
        inFile.close(); 
  

Комментарии:

1. В чем, собственно, ваша проблема??

Ответ №1:

Если у вас нет большого предварительно выделенного массива, я полагаю, вам нужно выделить новый массив перед его заполнением.

Возможно, вы также захотите не забывать увеличивать num .

Комментарии:

1. Спасибо. Идея выделить новый массив устранила мою проблему.

2. Я понимаю. Приятно видеть, что вы это исправили 🙂

Ответ №2:

Я не уверен, в чем на самом деле заключается ваша проблема (что, по вашему мнению, должно получиться?), но это может быть так:

 int[] num = new int[8]; //you should allocate a new array, otherwise you'd overwrite the values in the next iteration of the outer loop
for (int i = 1; i <= 8; i  )
{
    num[i-1] = Integer.parseInt(inFile.next());
    System.out.println(num[i-1]);
}
data = (String)(inFile.next()); 
System.out.println(data);

//you're storing num here, so you'd need a new num array for the next iteration, see above
head = new DateStampNode(data,num,head);
  

Комментарии:

1. Спасибо. Идея выделить новый массив устранила мою проблему.