1

我应该如何最好地转换元素

List<string> icons

至:

List<Texture> icons

我正在从 XML 文件中提取文件名(因此是初始字符串格式),但我想将文件名转换为纹理格式,因为它们是在运行时动态形成的,因此我无法从检查器加载。

4

1 回答 1

5

您可以使用ConvertAll<T>

icons.ConvertAll<Texture>(s => new Texture(..whatever conversion...))

或者您可以使用 LINQ 进行转换

from s in icons select new Texture(...)

两者都归结为相同。不同之处在于 LINQ 为您提供了一个IEnumerable直接从字符串列表中汇集数据(无需创建新列表),因此它适合一次性使用。如果您需要纹理的持久列表,请使用ConvertAll或固定IEnumerable使用ToList()

于 2011-02-06T11:34:45.997 回答