のような静的クラスですべてのメソッド名を取得するにはどうすればよい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();