#java #android #arraylist
#java #Android #arraylist
Вопрос:
Я пытаюсь преобразовать следующее в цикл, но что бы я ни пробовал, все напрасно, я хочу, чтобы кто-нибудь помог мне преобразовать этот тип данных в цикл.
ArrayList<String> parentList = new ArrayList<>();
ArrayList<ArrayList> childListHolder = new ArrayList<>();
parentList.add("Parent1");
parentList.add("Parent2");
parentList.add("Parent3");
ArrayList<String> childNameList = new ArrayList<>();
childNameList.add("Child1");
childNameList.add("Child2");
childNameList.add("Child3");
childListHolder.add(childNameList);
childNameList = new ArrayList<>();
childNameList.add("Child4");
childNameList.add("Child5");
childNameList.add("Child6");
childListHolder.add(childNameList);
childNameList = new ArrayList<>();
childNameList.add("Child7");
childNameList.add("Child8");
childNameList.add("Child9");
childListHolder.add(childNameList);
Комментарии:
1. Пожалуйста, поделитесь тем, что вы пробовали.
Ответ №1:
Здесь нет необходимости в циклах, также не используйте ArrayList
в качестве raw-типа и предпочитайте List
интерфейс. Используйте Arrays.asList(T...)
для генерации вашего List
(ов). Нравится,
List<List<String>> childListHolder = new ArrayList<>();
List<String> parentList = Arrays.asList("Fruits amp; Vegetables",
"Beverages amp; Health", "Home amp; Kitchen");
childListHolder.add(Arrays.asList("Apple", "Mango", "Banana"));
childListHolder.add(Arrays.asList("Red bull", "Maa", "Horlicks"));
childListHolder.add(Arrays.asList("Knife", "Vessels", "Spoons"));
Комментарии:
1. Я хочу извлечь данные из API, я получаю идеальный результат в журнале, но проблема в цикле
2. Итак, мне нужен цикл
Ответ №2:
Эквивалент вашего кода с циклами — это:
ArrayList<String> parentList = new ArrayList<>();
ArrayList<ArrayList> childListHolder = new ArrayList<>();
for (int i = 1; i <= 3; i ) {
parentList.add("Parent" i);
ArrayList<String> childNameList = new ArrayList<>();
for (int j = 1; j <= 3; j ) {
childNameList.add("Child" (3 * (i - 1) j));
}
childListHolder.add(childNameList);
}
Комментарии:
1. Есть ли какой-либо способ, которым мы можем сделать это с помощью вложенного цикла, я не хочу, чтобы несколько циклов
2. Это вложенные циклы. Первый цикл заполняется
parentList
. Следующий цикл использует вложенные циклы.3. Это возвращает повторяющийся дочерний элемент для каждого родителя
4. Это результат для
childListHolder
:[[Child1, Child2, Child3], [Child4, Child5, Child6], [Child7, Child8, Child9]]
. Где дубликаты?5. Позвольте мне перейти к сути, я получаю категории и подкатегории и создаю из этого расширяемый макет, и я не могу установить подкатегории