倍精度浮動小数点数 Double の拡張メソッドの一覧です。
Double の 拡張メソッドは Double 構造体、Math クラス、TimeSpan 構造体、DateTime 構造体のメソッドを使いやすくするためにまとめています。
拡張メソッドの作成方法などについて知りたい方は上の記事が参考になりますので参照してください。
目次
- 1 倍精度浮動小数点数の拡張メソッド DoubleExtensions
- 2 DoubleExtensions クラスのメソッド一覧
- 3 Abs メソッド
- 4 Acos メソッド
- 5 Asin メソッド
- 6 Atan メソッド
- 7 Atan2 メソッド
- 8 Ceiling メソッド
- 9 Cos メソッド
- 10 Cosh メソッド
- 11 Exp メソッド
- 12 Floor メソッド
- 13 FromOADate メソッド
- 14 FromDays メソッド
- 15 FromHours メソッド
- 16 FromMilliseconds メソッド
- 17 FromMinutes メソッド
- 18 FromSeconds メソッド
- 19 IEEERemainder メソッド
- 20 IsInfinity メソッド
- 21 IsNaN メソッド
- 22 IsNegativeInfinity メソッド
- 23 IsPositiveInfinity メソッド
- 24 Log メソッド
- 25 Log10 メソッド
- 26 Max メソッド
- 27 Min メソッド
- 28 Pow メソッド
- 29 Round メソッド
- 30 Sign メソッド
- 31 Sin メソッド
- 32 Sinh メソッド
- 33 Sqrt メソッド
- 34 Tan メソッド
- 35 Tanh メソッド
- 36 Truncate メソッド
- 37 参考記事
倍精度浮動小数点数の拡張メソッド DoubleExtensions
倍精度浮動小数点数の拡張メソッドは DoubleExtensions クラスに実装しています。
1 2 3 4 5 6 7 8 9 10 11 12 |
using System; namespace Extensions { /// <summary> /// Double 拡張メソッドクラス /// </summary> public static class DoubleExtensions { // このクラスに Double の拡張メソッドを作成します... } } |
DoubleExtensions クラスのメソッド一覧
DoubleExtensionsクラスに実装しているメソッドの一覧です。
メソッド名 | 説明 |
---|---|
Abs | 数値の絶対値を取得します。 |
Acos | コサインが指定数となる角度を取得します。 |
Asin | サインが指定数となる角度を取得します。 |
Atan | タンジェントが指定数となる角度を取得します。 |
Atan2 | タンジェントが 2 つの指定された数の商である角度を取得します。 |
Ceiling | 最小の整数値に切り上げます。 |
Ceiling | 指定した小数部の桁数に切り上げた最小の数値を取得します。 |
Cos | 倍精度浮動小数点数を角度とするコサインを取得します。 |
Cosh | 倍精度浮動小数点数をラジアンで表した角度とするハイパーボリックコサインを取得します。 |
Exp | 累乗した値を取得します。 |
Floor | 最大の整数値に切り捨てます。 |
Floor | 指定した小数部の桁数に切り捨てた最大の数値を取得します。 |
FromOADate | OLE オートメーション日付と等しい日付と時刻を表すオブジェクトを取得します。 |
FromDays | 指定した日数を表す時間間隔を取得します。日数はミリ秒単位の精度で指定します。 |
FromHours | 指定した時間数を表す時間間隔を取得します。時間数はミリ秒単位の精度で指定します。 |
FromMilliseconds | 指定したミリ秒数を表す時間間隔を取得します。 |
FromMinutes | 指定した分数を表す時間間隔を取得します。分数はミリ秒単位の精度で指定します。 |
FromSeconds | 指定した秒数を表す時間間隔を取得します。秒数はミリ秒単位の精度で指定します。 |
IEEERemainder | 指定した数で除算した結果の剰余を取得します。 |
IsInfinity | 負または正の無限大と評価されるかどうかを取得します。 |
IsNaN | 非数値 (System.Double.NaN) かどうかを取得します。 |
IsNegativeInfinity | 負の無限大と評価されるかどうかを取得します。 |
IsPositiveInfinity | 正の無限大と評価されるかどうかを取得します。 |
Log | 自然対数値を取得します。 |
Log | 底を指定して自然対数値を取得します。 |
Log10 | 底を 10 とする対数値を取得します。 |
Max | 指定する値と比較して大きい方の数値を取得します。 |
Min | 指定する値と比較して小さい方の数値を取得します。 |
Pow | 指定した値で累乗した値を取得します。 |
Round | 最も近い整数値に丸めます。 |
Round | 指定した小数部の桁数に丸めます。 |
Round | 最も近い整数に丸めます。 値が 2 つの数値の中間にある場合にその値を丸める方法をパラメーターで指定します。 |
Round | 指定した小数部の桁数に丸めます。値が 2 つの数値の中間にある場合にその値を丸める方法をパラメーターで指定します。 |
Sign | 符号を示す整数値を取得します。 |
Sin | 倍精度浮動小数点数を角度とするサインを取得します。 |
Sinh | 倍精度浮動小数点数をラジアンで表した角度とするハイパーボリックサインを取得します。 |
Sqrt | 平方根を取得します。 |
Tan | 倍精度浮動小数点数を角度とするタンジェントを取得します。 |
Tanh | 倍精度浮動小数点数をラジアンで表した角度とするハイパーボリックタンジェントを取得します。 |
Truncate | 倍精度浮動小数点数の整数部を取得します。 |
Abs メソッド
インスタンスメソッドのように呼び出すことのできるAbsメソッドです。
1 2 3 4 5 6 7 8 9 |
/// <summary> /// 数値の絶対値を取得します。 /// </summary> /// <param name="this">対象の値</param> /// <returns>絶対値を返します。</returns> public static double Abs(this double @this) { return Math.Abs(@this); } |
Acos メソッド
インスタンスメソッドのように呼び出すことのできるAcosメソッドです。
1 2 3 4 5 6 7 8 9 |
/// <summary> /// コサインが指定数となる角度を取得します。 /// </summary> /// <param name="this">対象の値</param> /// <returns>コサインが指定数となる角度を返します。</returns> public static double Acos(this double @this) { return Math.Acos(@this); } |
Asin メソッド
インスタンスメソッドのように呼び出すことのできるAsinメソッドです。
1 2 3 4 5 6 7 8 9 |
/// <summary> /// サインが指定数となる角度を取得します。 /// </summary> /// <param name="this">対象の値</param> /// <returns>サインが指定数となる角度を返します。</returns> public static double Asin(this double @this) { return Math.Asin(@this); } |
Atan メソッド
インスタンスメソッドのように呼び出すことのできるAtanメソッドです。
1 2 3 4 5 6 7 8 9 |
/// <summary> /// タンジェントが指定数となる角度を取得します。 /// </summary> /// <param name="this">対象の値</param> /// <returns>タンジェントが指定数となる角度を返します。</returns> public static double Atan(this double @this) { return Math.Atan(@this); } |
Atan2 メソッド
インスタンスメソッドのように呼び出すことのできるAtan2メソッドです。
1 2 3 4 5 6 7 8 9 10 |
/// <summary> /// タンジェントが 2 つの指定された数の商である角度を取得します。 /// </summary> /// <param name="this">対象の値</param> /// <param name="x">点の x 座標</param> /// <returns>タンジェントが 2 つの指定された数の商である角度を返します。</returns> public static double Atan2(this double @this, double x) { return Math.Atan2(@this, x); } |
Ceiling メソッド
インスタンスメソッドのように呼び出すことのできるCeilingメソッドです。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
/// <summary> /// 最小の整数値に切り上げます。 /// </summary> /// <param name="this">対象の値</param> /// <returns>切り上げた最小の整数値を返します。</returns> public static double Ceiling(this double @this) { return Math.Ceiling(@this); } /// <summary> /// 指定した小数部の桁数に切り上げた最小の数値を取得します。 /// </summary> /// <param name="this">対象の値</param> /// <param name="digits">切り捨て後の桁数</param> /// <returns>切り上げ後の数値を返します。</returns> public static double Ceiling(this double @this, int digits) { if (digits < 0) { string paramName = "digits"; string message = "切り上げ後の桁数は 0 から 15 までの間でなければなりません。"; throw new ArgumentOutOfRangeException(paramName, message); } double d = Math.Pow(10, digits); double value = @this * d; value = Math.Ceiling(value); return value / d; } |
引数digitsを指定できるCeilingメソッドは小数部の桁数を指定して切り上げた値を取得することができます。
Cos メソッド
インスタンスメソッドのように呼び出すことのできるCosメソッドです。
1 2 3 4 5 6 7 8 9 |
/// <summary> /// 倍精度浮動小数点数を角度とするコサインを取得します。 /// </summary> /// <param name="this">対象の値</param> /// <returns>角度のコサインを返します。</returns> public static double Cos(this double @this) { return Math.Cos(@this); } |
Cosh メソッド
インスタンスメソッドのように呼び出すことのできるCoshメソッドです。
1 2 3 4 5 6 7 8 9 |
/// <summary> /// 倍精度浮動小数点数をラジアンで表した角度とするハイパーボリックコサインを取得します。 /// </summary> /// <param name="this">対象の値</param> /// <returns>角度のハイパーボリックコサインを返します。</returns> public static double Cosh(this double @this) { return Math.Cosh(@this); } |
Exp メソッド
インスタンスメソッドのように呼び出すことのできるExpメソッドです。
1 2 3 4 5 6 7 8 9 |
/// <summary> /// 累乗した値を取得します。 /// </summary> /// <param name="this">対象の値</param> /// <returns></returns> public static double Exp(this double @this) { return Math.Exp(@this); } |
Floor メソッド
インスタンスメソッドのように呼び出すことのできるFloorメソッドです。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
/// <summary> /// 最大の整数値に切り捨てます。 /// </summary> /// <param name="this">対象の値</param> /// <returns>切り捨てた最大の整数値を返します。</returns> public static double Floor(this double @this) { return Math.Floor(@this); } /// <summary> /// 指定した小数部の桁数に切り捨てた最大の数値を取得します。 /// </summary> /// <param name="this">対象の値</param> /// <param name="digits">切り捨て後の桁数</param> /// <returns>切り捨て後の数値を返します。</returns> public static double Floor(this double @this, int digits) { if (digits < 0) { string paramName = "digits"; string message = "切り捨て後の桁数は 0 から 15 までの間でなければなりません。"; throw new ArgumentOutOfRangeException(paramName, message); } double d = Math.Pow(10, digits); double value = @this * d; value = Math.Floor(value); return value / d; } |
引数digitsを指定できるFloorメソッドは小数部の桁数を指定して切り捨てた値を取得することができます。
FromOADate メソッド
インスタンスメソッドのように呼び出すことのできるFromOADateメソッドです。
1 2 3 4 5 6 7 8 9 |
/// <summary> /// OLE オートメーション日付と等しい日付と時刻を表すオブジェクトを取得します。 /// </summary> /// <param name="this">対象の値</param> /// <returns>同じ日付と時刻を表す DateTime オブジェクトを返します。</returns> public static DateTime FromOADate(this double @this) { return DateTime.FromOADate(@this); } |
FromDays メソッド
インスタンスメソッドのように呼び出すことのできるFromDaysメソッドです。
1 2 3 4 5 6 7 8 9 |
/// <summary> /// 指定した日数を表す時間間隔を取得します。日数はミリ秒単位の精度で指定します。 /// </summary> /// <param name="this">対象の値</param> /// <returns>指定した日数を表す System.TimeSpan を返します。</returns> public static TimeSpan FromDays(this double @this) { return TimeSpan.FromDays(@this); } |
FromHours メソッド
インスタンスメソッドのように呼び出すことのできるFromHoursメソッドです。
1 2 3 4 5 6 7 8 9 |
/// <summary> /// 指定した時間数を表す時間間隔を取得します。時間数はミリ秒単位の精度で指定します。 /// </summary> /// <param name="this">対象の値</param> /// <returns>指定した時間数を表す System.TimeSpan を返します。</returns> public static TimeSpan FromHours(this double @this) { return TimeSpan.FromHours(@this); } |
FromMilliseconds メソッド
インスタンスメソッドのように呼び出すことのできるFromMillisecondsメソッドです。
1 2 3 4 5 6 7 8 9 |
/// <summary> /// 指定したミリ秒数を表す時間間隔を取得します。 /// </summary> /// <param name="this">対象の値</param> /// <returns>指定したミリ秒数を表す System.TimeSpan を返します。</returns> public static TimeSpan FromMilliseconds(this double @this) { return TimeSpan.FromMilliseconds(@this); } |
FromMinutes メソッド
インスタンスメソッドのように呼び出すことのできるFromMinutesメソッドです。
1 2 3 4 5 6 7 8 9 |
/// <summary> /// 指定した分数を表す時間間隔を取得します。分数はミリ秒単位の精度で指定します。 /// </summary> /// <param name="this">対象の値</param> /// <returns>指定した分数を表す System.TimeSpan を返します。</returns> public static TimeSpan FromMinutes(this double @this) { return TimeSpan.FromMinutes(@this); } |
FromSeconds メソッド
インスタンスメソッドのように呼び出すことのできるFromSecondsメソッドです。
1 2 3 4 5 6 7 8 9 |
/// <summary> /// 指定した秒数を表す時間間隔を取得します。秒数はミリ秒単位の精度で指定します。 /// </summary> /// <param name="this">対象の値</param> /// <returns>指定した秒数を表す System.TimeSpan を返します。</returns> public static TimeSpan FromSeconds(this double @this) { return TimeSpan.FromSeconds(@this); } |
IEEERemainder メソッド
インスタンスメソッドのように呼び出すことのできるIEEERemainderメソッドです。
1 2 3 4 5 6 7 8 9 10 |
/// <summary> /// 指定した数で除算した結果の剰余を取得します。 /// </summary> /// <param name="this">対象の値</param> /// <param name="value">除算する値</param> /// <returns>除算した結果の剰余を返します。</returns> public static double IEEERemainder(this double @this, double value) { return Math.IEEERemainder(@this, value); } |
IsInfinity メソッド
インスタンスメソッドのように呼び出すことのできるIsInfinityメソッドです。
1 2 3 4 5 6 7 8 9 |
/// <summary> /// 負または正の無限大と評価されるかどうかを取得します。 /// </summary> /// <param name="this">対象の値</param> /// <returns>System.Double.PositiveInfinity または System.Double.NegativeInfinity と評価される場合は true。それ以外の場合は false を返します。</returns> public static Boolean IsInfinity(this double @this) { return double.IsInfinity(@this); } |
IsNaN メソッド
インスタンスメソッドのように呼び出すことのできるIsNaNメソッドです。
1 2 3 4 5 6 7 8 9 |
/// <summary> /// 非数値 (System.Double.NaN) かどうかを取得します。 /// </summary> /// <param name="this">対象の値</param> /// <returns>System.Double.NaN と評価される場合は true。それ以外の場合は false を返します。</returns> public static Boolean IsNaN(this double @this) { return double.IsNaN(@this); } |
IsNegativeInfinity メソッド
インスタンスメソッドのように呼び出すことのできるIsNegativeInfinityメソッドです。
1 2 3 4 5 6 7 8 9 |
/// <summary> /// 負の無限大と評価されるかどうかを取得します。 /// </summary> /// <param name="this">対象の値</param> /// <returns>System.Double.NegativeInfinity と評価される場合は true。それ以外の場合は false を返します。</returns> public static Boolean IsNegativeInfinity(this double @this) { return double.IsNegativeInfinity(@this); } |
IsPositiveInfinity メソッド
インスタンスメソッドのように呼び出すことのできるIsPositiveInfinityメソッドです。
1 2 3 4 5 6 7 8 9 |
/// <summary> /// 正の無限大と評価されるかどうかを取得します。 /// </summary> /// <param name="this">対象の値</param> /// <returns>System.Double.PositiveInfinity と評価される場合は true。それ以外の場合は false を返します。</returns> public static Boolean IsPositiveInfinity(this double @this) { return double.IsPositiveInfinity(@this); } |
Log メソッド
インスタンスメソッドのように呼び出すことのできるLogメソッドです。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
/// <summary> /// 自然対数値を取得します。 /// </summary> /// <param name="this">対象の値</param> /// <returns>自然対数値を返します。</returns> public static double Log(this double @this) { return Math.Log(@this); } /// <summary> /// 底を指定して自然対数値を取得します。 /// </summary> /// <param name="this">対象の値</param> /// <param name="newBase"></param> /// <returns>指定した底の自然対数値を返します。</returns> public static double Log(this double @this, double newBase) { return Math.Log(@this, newBase); } |
Log10 メソッド
インスタンスメソッドのように呼び出すことのできるLog10メソッドです。
1 2 3 4 5 6 7 8 9 |
/// <summary> /// 底を 10 とする対数値を取得します。 /// </summary> /// <param name="this">対象の値</param> /// <returns>底 10 の対数値を返します。</returns> public static double Log10(this double @this) { return Math.Log10(@this); } |
Max メソッド
インスタンスメソッドのように呼び出すことのできるMaxメソッドです。
1 2 3 4 5 6 7 8 9 10 |
/// <summary> /// 指定する値と比較して大きい方の数値を取得します。 /// </summary> /// <param name="this">対象の値</param> /// <param name="value">比較する値</param> /// <returns>大きい方の数値を返します。</returns> public static double Max(this double @this, double value) { return Math.Max(@this, value); } |
Min メソッド
インスタンスメソッドのように呼び出すことのできるMinメソッドです。
1 2 3 4 5 6 7 8 9 10 |
/// <summary> /// 指定する値と比較して小さい方の数値を取得します。 /// </summary> /// <param name="this">対象の値</param> /// <param name="value">比較する値</param> /// <returns>小さい方の数値を返します。</returns> public static double Min(this double @this, double value) { return Math.Min(@this, value); } |
Pow メソッド
インスタンスメソッドのように呼び出すことのできるPowメソッドです。
1 2 3 4 5 6 7 8 9 10 |
/// <summary> /// 指定した値で累乗した値を取得します。 /// </summary> /// <param name="this">対象の値</param> /// <param name="value">累乗を指定する値</param> /// <returns>累乗した結果の値を返します。</returns> public static double Pow(this double @this, double value) { return Math.Pow(@this, value); } |
Round メソッド
インスタンスメソッドのように呼び出すことのできるRoundメソッドです。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
/// <summary> /// 最も近い整数値に丸めます。 /// </summary> /// <param name="this">対象の値</param> /// <returns>丸めた結果の整数値を返します。</returns> public static double Round(this double @this) { return Math.Round(@this); } /// <summary> /// 指定した小数部の桁数に丸めます。 /// </summary> /// <param name="this">対象の値</param> /// <param name="digits">丸め後の小数部の桁数</param> /// <returns>丸めた結果の数値を返します。</returns> public static double Round(this double @this, Int32 digits) { return Math.Round(@this, digits); } /// <summary> /// 最も近い整数に丸めます。 値が 2 つの数値の中間にある場合にその値を丸める方法をパラメーターで指定します。 /// </summary> /// <param name="this">対象の値</param> /// <param name="mode">2 つの数値の中間にある場合に丸める方法</param> /// <returns>丸めた結果の整数値を返します。</returns> public static double Round(this double @this, MidpointRounding mode) { return Math.Round(@this, mode); } /// <summary> /// 指定した小数部の桁数に丸めます。値が 2 つの数値の中間にある場合にその値を丸める方法をパラメーターで指定します。 /// </summary> /// <param name="this">対象の値</param> /// <param name="digits">丸め後の小数部の桁数</param> /// <param name="mode">2 つの数値の中間にある場合に丸める方法</param> /// <returns>丸めた結果の数値を返します。</returns> public static double Round(this double @this, Int32 digits, MidpointRounding mode) { return Math.Round(@this, digits, mode); } |
Sign メソッド
インスタンスメソッドのように呼び出すことのできるSignメソッドです。
1 2 3 4 5 6 7 8 9 |
/// <summary> /// 符号を示す整数値を取得します。 /// </summary> /// <param name="this">対象の値</param> /// <returns>符号を示す整数値を返します。0 未満の場合は - 1、0 の場合は 0、0 より大きい場合は 1 になります。</returns> public static Int32 Sign(this double @this) { return Math.Sign(@this); } |
Sin メソッド
インスタンスメソッドのように呼び出すことのできるSinメソッドです。
1 2 3 4 5 6 7 8 9 |
/// <summary> /// 倍精度浮動小数点数を角度とするサインを取得します。 /// </summary> /// <param name="this">対象の値</param> /// <returns>角度のサインを返します。</returns> public static double Sin(this double @this) { return Math.Sin(@this); } |
Sinh メソッド
インスタンスメソッドのように呼び出すことのできるSinhメソッドです。
1 2 3 4 5 6 7 8 9 |
/// <summary> /// 倍精度浮動小数点数をラジアンで表した角度とするハイパーボリックサインを取得します。 /// </summary> /// <param name="this">対象の値</param> /// <returns>角度のハイパーボリックサインを返します。</returns> public static double Sinh(this double @this) { return Math.Sinh(@this); } |
Sqrt メソッド
インスタンスメソッドのように呼び出すことのできるSqrtメソッドです。
1 2 3 4 5 6 7 8 9 |
/// <summary> /// 平方根を取得します。 /// </summary> /// <param name="this">対象の値</param> /// <returns>平方根を返します</returns> public static double Sqrt(this double @this) { return Math.Sqrt(@this); } |
Tan メソッド
インスタンスメソッドのように呼び出すことのできるTanメソッドです。
1 2 3 4 5 6 7 8 9 |
/// <summary> /// 倍精度浮動小数点数を角度とするタンジェントを取得します。 /// </summary> /// <param name="this">対象の値</param> /// <returns>角度のタンジェントを返します。</returns> public static double Tan(this double @this) { return Math.Tan(@this); } |
Tanh メソッド
インスタンスメソッドのように呼び出すことのできるTanhメソッドです。
1 2 3 4 5 6 7 8 9 |
/// <summary> /// 倍精度浮動小数点数をラジアンで表した角度とするハイパーボリックタンジェントを取得します。 /// </summary> /// <param name="this">対象の値</param> /// <returns>角度のハイパーボリックタンジェントを返します</returns> public static double Tanh(this double @this) { return Math.Tanh(@this); } |
Truncate メソッド
インスタンスメソッドのように呼び出すことのできるTruncateメソッドです。
1 2 3 4 5 6 7 8 9 |
/// <summary> /// 倍精度浮動小数点数の整数部を取得します。 /// </summary> /// <param name="this">対象の値</param> /// <returns>整数部を返します。</returns> public static double Truncate(this double @this) { return Math.Truncate(@this); } |
今後も倍精度浮動小数点数の拡張メソッドを作成したら随時追加していきます。
参考記事
文字列の拡張メソッドについては、以下の記事をご参照ください。
日付と時間の拡張メソッドについては、以下の記事をご参照ください。
10進数の拡張メソッドについては、以下の記事をご参照ください。
コレクションの拡張メソッドについては、以下の記事をご参照ください。