版本:Unity 6 (6000.0)
语言英语
  • C#

ExpressionEvaluator

UnityEngine 中的类

/

实现于:UnityEngine.CoreModule

建议修改

成功!

感谢您帮助我们提高 Unity 文档的质量。虽然我们无法接受所有提交,但我们确实阅读了用户提出的每个建议的更改,并在适用的情况下进行更新。

关闭

提交失败

由于某种原因,您的建议更改无法提交。请<a>稍后再试</a>。感谢您抽出时间帮助我们提高 Unity 文档的质量。

关闭

取消

描述

评估简单的数学表达式;支持 int / float 和运算符:+ - * / % ^ ( )。

此类具有一个单一的泛型静态方法 Evaluate,它评估数学表达式并返回结果。

支持的数字类型为:intfloatlongdouble

可以评估的表达式支持

  • 算术运算符 a+ba-ba*ba/b
  • 幂 (a^b) 和模 (a%b) 运算符,
  • 括号,
  • 数学函数 sqrt(a)floor(a)ceil(a)round(a)
  • 三角函数 cos(a)sin(a)tan(a)(参数以弧度表示)和常数 pi
using UnityEditor;
using UnityEngine;

public class ExampleScript : MonoBehaviour { [MenuItem("Example/Int Expression")] public static void IntExample() { ExpressionEvaluator.Evaluate("2+3", out int result); // prints 5 Debug.Log(result); }

[MenuItem("Example/Float Expression")] public static void FloatExample() { ExpressionEvaluator.Evaluate("sqrt(cos(pi/3))", out float result); // prints 0.7071068 Debug.Log(result); } }

静态方法

Evaluate评估数学表达式并返回结果。