| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 游戏开发 -> Unity中使用函数式apply、filter、列表推导:从打印一个物体下所有子物体的信息开始 -> 正文阅读 |
|
[游戏开发]Unity中使用函数式apply、filter、列表推导:从打印一个物体下所有子物体的信息开始 |
Unity有时候也需要处理大量的数据,特别是在编辑器脚本中,我们可以编写一些复杂的业务,用于预处理。一、想做什么1、如何在C#里面使用函数式编程?比如使用 pipeline,apply,map,filter等功能。 2、获取一个子物体的方法为GetComponentInChildren<something>(),但是如何把它转成list? 3、一个list如何调用apply/map类似的方法? 4、如何实现列表推导?给定一个list,根据它的信息和推导规则,返回一个新的list。 比如:我有一个list<GameObject>,我想返回一个list<String>,里面装载的是GameObject的名字? 5、如何用类表推导自动生成一个字典,比如: 给定【list<GameObject>】,如何生成【Dictionary<name,object>】? ? 二、案例中的物体父子关系列表推导:如何生成名字列表、位置列表 数据查询:如何返回符合条件的item ForEach的使用 三、解决办法:(1)如何把GetComponentInChildren<>()变成list?不能直接调用tolist() 把GetComponentInChildren<T>()的结果转成list: GetComponentInChildren<Transform>().Cast<Transform>().ToList() ? ?
? ? 打印结果: (2)ForEach——对所有元素执行一个方法fn,该方法没有返回值
(3)列表推导——Select:从一个list<GameObject> 生成 list<String>,显示物体的名字——Select
?同理,可以生成Vector3类型的position (4)filter的实现——Where(5)list to dictionary
|
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/27 22:21:26- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |