如何获取静态类中的所有方法名称Math
?
输出应类似于以下内容:
Sin
Cos
Round
...
尝试这个 :
MethodInfo[] methodInfos = typeof(Math).GetMethods(BindingFlags.Public | BindingFlags.Static);
foreach (MethodInfo methodInfo in methodInfos)
{
Console.WriteLine(methodInfo.Name);
}
另外,如果您还需要知道所有参数,请尝试类似
private static void Main()
{
MethodInfo[] methodInfos = typeof(Math).GetMethods(BindingFlags.Public | BindingFlags.Static);
foreach (MethodInfo methodInfo in methodInfos)
{
Console.WriteLine(String.Format("{0} with following parameters", methodInfo.Name));
ParameterInfo[] parameters = methodInfo.GetParameters();
foreach (ParameterInfo parameter in parameters)
{
Console.WriteLine("Name : {0}, Type : {1}", parameter.Name, parameter.ParameterType.FullName);
}
Console.WriteLine("--------------");
}
}
输出 :
Acos with following parameters
Name : d, Type : System.Double
--------------
Asin with following parameters
Name : d, Type : System.Double
--------------
Atan with following parameters
Name : d, Type : System.Double
--------------
Atan2 with following parameters
Name : y, Type : System.Double
Name : x, Type : System.Double
--------------
Ceiling with following parameters
Name : d, Type : System.Decimal
--------------
Ceiling with following parameters
Name : a, Type : System.Double
--------------
Cos with following parameters
Name : d, Type : System.Double
--------------
Cosh with following parameters
Name : value, Type : System.Double
--------------
Floor with following parameters
Name : d, Type : System.Decimal
--------------
Floor with following parameters
Name : d, Type : System.Double
--------------
Sin with following parameters
Name : a, Type : System.Double
--------------
Tan with following parameters
Name : a, Type : System.Double
--------------
Sinh with following parameters
Name : value, Type : System.Double
--------------
Tanh with following parameters
Name : value, Type : System.Double
--------------
Round with following parameters
Name : a, Type : System.Double
--------------
Round with following parameters
Name : value, Type : System.Double
Name : digits, Type : System.Int32
--------------
Round with following parameters
Name : value, Type : System.Double
Name : mode, Type : System.MidpointRounding
--------------
Round with following parameters
Name : value, Type : System.Double
Name : digits, Type : System.Int32
Name : mode, Type : System.MidpointRounding
--------------
Round with following parameters
Name : d, Type : System.Decimal
--------------
Round with following parameters
Name : d, Type : System.Decimal
Name : decimals, Type : System.Int32
--------------
Round with following parameters
Name : d, Type : System.Decimal
Name : mode, Type : System.MidpointRounding
--------------
Round with following parameters
Name : d, Type : System.Decimal
Name : decimals, Type : System.Int32
Name : mode, Type : System.MidpointRounding
--------------
Truncate with following parameters
Name : d, Type : System.Decimal
--------------
Truncate with following parameters
Name : d, Type : System.Double
--------------
Sqrt with following parameters
Name : d, Type : System.Double
--------------
Log with following parameters
Name : d, Type : System.Double
--------------
Log10 with following parameters
Name : d, Type : System.Double
--------------
Exp with following parameters
Name : d, Type : System.Double
--------------
Pow with following parameters
Name : x, Type : System.Double
Name : y, Type : System.Double
--------------
IEEERemainder with following parameters
Name : x, Type : System.Double
Name : y, Type : System.Double
--------------
Abs with following parameters
Name : value, Type : System.SByte
--------------
Abs with following parameters
Name : value, Type : System.Int16
--------------
Abs with following parameters
Name : value, Type : System.Int32
--------------
Abs with following parameters
Name : value, Type : System.Int64
--------------
Abs with following parameters
Name : value, Type : System.Single
--------------
Abs with following parameters
Name : value, Type : System.Double
--------------
Abs with following parameters
Name : value, Type : System.Decimal
--------------
Max with following parameters
Name : val1, Type : System.SByte
Name : val2, Type : System.SByte
--------------
Max with following parameters
Name : val1, Type : System.Byte
Name : val2, Type : System.Byte
--------------
Max with following parameters
Name : val1, Type : System.Int16
Name : val2, Type : System.Int16
--------------
Max with following parameters
Name : val1, Type : System.UInt16
Name : val2, Type : System.UInt16
--------------
Max with following parameters
Name : val1, Type : System.Int32
Name : val2, Type : System.Int32
--------------
Max with following parameters
Name : val1, Type : System.UInt32
Name : val2, Type : System.UInt32
--------------
Max with following parameters
Name : val1, Type : System.Int64
Name : val2, Type : System.Int64
--------------
Max with following parameters
Name : val1, Type : System.UInt64
Name : val2, Type : System.UInt64
--------------
Max with following parameters
Name : val1, Type : System.Single
Name : val2, Type : System.Single
--------------
Max with following parameters
Name : val1, Type : System.Double
Name : val2, Type : System.Double
--------------
Max with following parameters
Name : val1, Type : System.Decimal
Name : val2, Type : System.Decimal
--------------
Min with following parameters
Name : val1, Type : System.SByte
Name : val2, Type : System.SByte
--------------
Min with following parameters
Name : val1, Type : System.Byte
Name : val2, Type : System.Byte
--------------
Min with following parameters
Name : val1, Type : System.Int16
Name : val2, Type : System.Int16
--------------
Min with following parameters
Name : val1, Type : System.UInt16
Name : val2, Type : System.UInt16
--------------
Min with following parameters
Name : val1, Type : System.Int32
Name : val2, Type : System.Int32
--------------
Min with following parameters
Name : val1, Type : System.UInt32
Name : val2, Type : System.UInt32
--------------
Min with following parameters
Name : val1, Type : System.Int64
Name : val2, Type : System.Int64
--------------
Min with following parameters
Name : val1, Type : System.UInt64
Name : val2, Type : System.UInt64
--------------
Min with following parameters
Name : val1, Type : System.Single
Name : val2, Type : System.Single
--------------
Min with following parameters
Name : val1, Type : System.Double
Name : val2, Type : System.Double
--------------
Min with following parameters
Name : val1, Type : System.Decimal
Name : val2, Type : System.Decimal
--------------
Log with following parameters
Name : a, Type : System.Double
Name : newBase, Type : System.Double
--------------
Sign with following parameters
Name : value, Type : System.SByte
--------------
Sign with following parameters
Name : value, Type : System.Int16
--------------
Sign with following parameters
Name : value, Type : System.Int32
--------------
Sign with following parameters
Name : value, Type : System.Int64
--------------
Sign with following parameters
Name : value, Type : System.Single
--------------
Sign with following parameters
Name : value, Type : System.Double
--------------
Sign with following parameters
Name : value, Type : System.Decimal
--------------
BigMul with following parameters
Name : a, Type : System.Int32
Name : b, Type : System.Int32
--------------
DivRem with following parameters
Name : a, Type : System.Int32
Name : b, Type : System.Int32
Name : result, Type : System.Int32&
--------------
DivRem with following parameters
Name : a, Type : System.Int64
Name : b, Type : System.Int64
Name : result, Type : System.Int64&
--------------
怎么样.GetMembers
var list = typeof(Math).GetMembers().Select(c => c.Name).Distinct().ToList();