c# - Unity 5.3 - C# -- List<Vector2> 如何提取最大的 X 值?

标签 c# unity3d

我正在 Unity 5.3 上开发 C# 脚本。我有一个 Vector2 值列表,我需要提取列表中最大的 X 值。我正在尝试执行以下操作:

public List<Vector2> Series1Data;
... //I populate the List with some coordinates
MaXValue = Mathf.Max(Series1Data[0]);

但是,我收到以下错误:

error CS1502: The best overloaded method match for `UnityEngine.Mathf.Max(params float[])' has some invalid arguments
error CS1503: Argument `#1' cannot convert `UnityEngine.Vector2' expression to type `float[]'

有没有其他方法可以提取列表中最大的X值?

最佳答案

您正试图将一个列表放在一个不能将该类型的变量作为参数的函数上。

Mathf.Max在这里您可以看到它可以处理哪种类型的参数。

这段代码可能会完成工作:

public List<Vector2> Series1Data;
... //I populate the List with some coordinates

MaXValue = Series1Data[0].x; //Get first value
for(int i = 1; i < Series1Data.Count; i++) { //Go throught all entries
  MaXValue = Mathf.Max(Series1Data[i].x, MaXValue); //Always get the maximum value
}

关于c# - Unity 5.3 - C# -- List<Vector2> 如何提取最大的 X 值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38709411/

相关文章:

c# - 从 git 中提取项目后,Unity 无法识别某些 .cs 文件

c# - 获取空数组的类型

c# - 我们可以在没有 azure 或机器人模拟器的情况下在自己的客户端中测试机器人吗?

c# - Convert.ToString 方法和 Object.ToString() 在全局化方面的区别

c# - Unity - 如何旋转和全屏视频,在 RawImage 上使用 VideoPlayer API 播放

unity3d - Unity导出中Android支持编译的Gradle问题

c# - 在循环中一步步启动协程

c# - 控制 dotnet core 的 ThreadPool 中的线程数

c# - 没有完成端口的异步 IO?

c# - 将 Unityscript 转换为 C# : what does something like if(format & 2) mean?