java - List<List<model>>如何更快捷的取里面的model?
问题描述
访问接口返回数据类型为List<List<model>>,现在想将其中的model插入数据库,感觉一点点循环有点傻,0.0...,各位有没有其他的方法?
问题解答
回答1:C#的话:
var flat = list.SelectMany(l=>l).ToList();
Java的话:
List<model> flat = list.stream().flatMap(List::stream).collect(Collectors.toList());回答2:
list.stream().flatMap(model-> model.stream()).forEach(System.out::println);
回答3:数据结构使然,循环吧
回答4: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; }} }}回答5:
自己要不循环。要不接住其他函数来帮你完成循环。
相关文章:
1. python开发的脚本想上个ui,用哪个库来绘制窗口比较好?求推荐2. python - flask jinjia2 中怎么定义嵌套变量3. html - css 文件内,有的样式没调用, 有没有工具删除这部分没调用的内容?4. Chrome-org.openqa.selenium.WebDriverException:未知错误:无法在driver.manage()window()maximize();处获得自动化扩展5. java - JPA连接数据库,一段时间没有数据操作会关闭连接,再次访问就会抛出异常,如何解决?6. javascript - Chrome 扩展,更新别人的扩展 能不能上传到插件商店?7. python执行cmd命令,怎么让他执行类似Ctrl+C效果将其结束命令?8. 紧急求助-我们的一位同事突然离职,需要一个后端的同事,项目才能进行,停滞了,那位可以帮帮忙?9. python对8000行csv添加列10. python - 如何使用websocket在网页上动态示实时数据的折线图?

网公网安备