У меня есть Java-программа, которая использует несколько HashMaps, по одному для каждой категории, выполненной в гипотетическом ресторане.Динамический вызов существующей переменной
Мне нужно обработать и вывести текст в файл. Тем не менее, я пошел «плохо» и просто написал код шесть раз, вызывая разные хэш-карты в каждый момент времени.
Я не могу оставить точный демо-код, поскольку это будет поставляться как проект и как таковой могут быть найдены случайными искателями плагиата и ошибочно отмечены как плагиат, так как это будет огромный кусок кода. Однако следует проиллюстрировать эту проблему следующим образом.
DoSomething(These);
DoSomething(All);
DoSomething(Have);
DoSomething(Completely);
DoSomething(Different);
DoSomething(Names);
Теперь вместо «DoSomething», представьте себе, 20 строк кода, и на каждые 20 строк я использую один конкретный HashMap.
Я не могу точно заполнить массив и заставить его использовать данные из массива, поскольку он попытается использовать строки вместо HashMap (вызывая DoSomething («Эти») вместо DoSomething (These)).
Есть ли способ динамически вызывать HashMaps, чтобы я мог сократить все это в один цикл, который делает одно и то же для каждого из HashMaps?
Если на всех HashMaps выполняются одни и те же операции, то почему бы просто не создать массив HashMap [], который содержит их все и пропустить? – Kallja
Ваш вопрос, кажется, отвечает вашей проблеме. Поверните 20 строк в метод с параметром карты. – Taylor
Или вместо того, чтобы выполнять одну и ту же операцию 6 раз для 6 разных HashMaps, возможно, отметьте данные в HashMap относительно того, на каких этапах они должны быть обработаны, тогда вы можете выполнить цикл один раз и выполнить соответствующие части один раз. – CodeChimp