Я работаю с файлом, который имеет такой формат:
LAWS303 RHLT1 10 84 AITKEN WU
LAWS314 RHLT3 15 2 PARADZA VISSER
LAWS329 EALT006 6 62 AITKEN WILSON
LAWS334 HMLT105 2 43 ANDREW INKSTER
LAWS334 HMLT206 2 62 JULIAN YOUNG
LAWS340 RHLT1 11 87 AL YANG
Цель этой программы - чтобы каждый день (третий столбец) месяца, каждый код курса (первыйстолбец) должен быть напечатан вместе с общим количеством студентов (четвертый столбец), посещающих курс в этот день.По моим размышлениям, это подразумевает либо многократное чтение файла (ew!), Либо загрузку трех значимых значений (день, курс, численность персонала) в какой-то массив и работу с ним вместо этого.Несмотря на то, что он достаточно хорошо знаком с многомерным массивом, он неоднократно заставлял мою голову взрываться.У меня есть псевдокод для этой программы, написанный передо мной, и мой разум рисует пробел, когда дело доходит до строки, определяющей массив.
DayOfMonth может оставаться строкой, поскольку он будет сравниваться только с другой строкой.Код курса, очевидно, тоже должен быть строкой.Однако headCount в идеале должен быть числовым;он будет добавлен по мере обработки каждой строки файла.Связь между этими тремя типами заключается в том, что может быть много courseCodes в dayOfMonth, но только один headCount на courseCode, как я добавлю к нему, когда прочту все в массив.
Итак, в derpspeak,это должно выглядеть примерно так:
{String dayOfMonth = {{String courseCode}, {int headCount}}}
Две проблемы, которые у меня есть, это ... a), чтоЯ не уверен, как на самом деле закодировать этот фанк-массив там и б) поскольку я не могу действительно обернуть его вокруг себя с самого начала, есть очень хороший шанс, что я просто спроектировал что-то совершенно неправильное дляЧто мне нужно.Или невозможно.Оба?
Например, массив будет начинаться с пустого.Я хотел бы добавить dayOfMonth, courseCode и headCount, чтобы начать его.Но я не мог просто пойти array.add (dayOfMonth), потому что он ожидает массив, что наводит меня на мысль, что я должен использовать что-то еще.Argh!
Боже мой мозг.