84669 Lernen von Personen
152542 Lernen von Personen
20005 Lernen von Personen
5487 Lernen von Personen
7821 Lernen von Personen
359900 Lernen von Personen
3350 Lernen von Personen
180660 Lernen von Personen
48569 Lernen von Personen
18603 Lernen von Personen
40936 Lernen von Personen
1549 Lernen von Personen
1183 Lernen von Personen
32909 Lernen von Personen
访问接口返回数据类型为List<List<model>>,现在想将其中的model插入数据库,感觉一点点循环有点傻,0.0...,各位有没有其他的方法?
认证高级PHP讲师
C#的话:
var flat = list.SelectMany(l=>l).ToList();
Java的话:
List<model> flat = list.stream().flatMap(List::stream).collect(Collectors.toList());
list.stream().flatMap(model-> model.stream()).forEach(System.out::println);
数据结构使然,循环吧
public static IEnumerable<T> GetItems<T>(this List<List<T>> list) { foreach (var child in list) { foreach (var item in child) { yield return item; } } } public static IEnumerable<T> GetNestItems<T>(this System.Collections.IList list) { Type type = null; foreach (var item in list) { if (type == null) type = item.GetType(); if (type == typeof(T)) { yield return (T)item; } else if (type.GetGenericTypeDefinition() == typeof(List<>)) { var items = GetNestItems<T>((System.Collections.IList)item); foreach (var t in items) { yield return t; } } } }
自己要不循环。要不接住其他函数来帮你完成循环。
C#的话:
Java的话:
list.stream().flatMap(model-> model.stream()).forEach(System.out::println);
数据结构使然,循环吧
自己要不循环。要不接住其他函数来帮你完成循环。