Я еще не слишком разбираюсь в Java, и я надеюсь, что кто-то может направить меня в правильном направлении, потому что сейчас я чувствую, что просто бью себя головой об стену ...
Первый класс называется MeasuredParams и имеет более 40 числовых полей (рост, вес, талия, размер запястья - некоторые целые, но в основном двойные). Второй класс - это статистический классификатор под названием Classifier. Он был обучен на подмножестве полей MeasuredParams. Имена полей, на которых обучен Классификатор, по порядку хранятся в массиве с именем reqdFields.
Что мне нужно сделать, это загрузить новый массив toClassify со значениями, хранящимися в полях из MeasuredParams, которые соответствуют списку полей (включая порядок), найденному в reqdFields. Я могу внести любые необходимые изменения в класс MeasuredParams, но я застрял с классификатором как есть.
Мой метод грубой силы состоял в том, чтобы избавиться от полей в MeasuredParams и использовать вместо него arrayList и сохранить имена полей в объекте Enum, чтобы он действовал как указатель индекса. Затем выполните цикл по списку reqdFields, по одному элементу за раз, и найдите соответствующее имя в объекте Enum, чтобы найти правильную позицию в arrayList. Загрузите значение, хранящееся в этой позиции, в toClassify, а затем перейдите к следующему элементу в reqdFields.
Я не уверен, как именно я буду искать через объект Enum - было бы намного проще, если бы имена полей были сохранены во втором arrayList. Но тогда позиции индекса между ними должны были остаться согласованными, и я вернулся к использованию Enum. Я думаю. Я бегал кругами весь день, и я продолжаю думать, что должен быть более простой способ сделать это. Я просто застрял прямо сейчас и не могу понять, что я начал.
Любая помощь будет принята с благодарностью. Большое спасибо!
Michael