Alo*_*lox 4 c# linq foreach transform unity-game-engine
使用Linq是否可以简化以下代码?
Transform parent;
List<GameObject> children = new List<GameObject>();
foreach (Transform child in parent)
{
children.Add(child.gameObject);
}
Run Code Online (Sandbox Code Playgroud)
我希望简单地编写parent.ForEach(),但是转换没有这种便利。有人知道这个简化吗?
这只是出于好奇,没有必要。
编辑:父母不是孩子的列表而是一个转换。
如果是TransformImplements IEnumerable,但不是,IEnumerable<Transform>那么您首先需要将其转换为通用版本,然后才能使用Linq:
List<GameObject> children = parent
.Cast<Transform>()
.Select(t => t.gameObject)
.ToList();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
820 次 |
| 最近记录: |