Что-то вроде:
void flattenFlows(Flows flows, List<Flows> flowsList)
{
flowsList.add(flows);
for (Flows f: flows.listOfFlows) {
flattenFlows(f, flowsList);
}
}
flowsList
- список, в который вы хотите добавить все потоки.
Редактировать: если возможно, чтобы поле списка было null (как указал один комментатор), добавьте проверку на null:
void flattenFlows(Flows flows, List<Flows> flowsList)
{
flowsList.add(flows);
if(flow.listOfFlows!=null) {
for (Flows f: flows.listOfFlows) {
flattenFlows(f, flowsList);
}
}
}