代码之家  ›  专栏  ›  技术社区  ›  John Alexiou

处理数学和计算的可拓方法有哪些有用的例子?[关闭]

  •  1
  • John Alexiou  · 技术社区  · 14 年前

    我经常使用的扩展方法是

    public static double Pi(double this x) { return Math.PI*x; }
    

    为了能够接触到 2.0.Pi() 0.5.Pi()

    人们常用的与数学相关的扩展方法还有哪些例子?

    附言。只是好奇。

    2 回复  |  直到 14 年前
        1
  •  3
  •   Simon D.    14 年前
    public static double Squared(double this x) { return x*x; }
    
        2
  •  0
  •   John Alexiou    14 年前

    为了让创造性的果汁流动,我将提供更多的例子。。。

    public static double Raise(double this x, double exponent)
    {
        return Math.Pow(x, exponent);
    }
    
    public static bool NearZero(double this x, double tolerance)
    {
         return Math.Abs(x) <= tolerance;
    }
    
    public static double Cap(double this x, double threshold)
    {
        return Math.Abs(x)<threshold ? x : threshold*Math.Sign(x);
    }
    
    public static double SignOf(double this x, double sense)
    {
        return Math.Sign(sense)*Math.Abs(x);
    }
    
    public static double ToRadians(double this x) { return Math.PI*x/180; }
    public static double ToDegrees(double this x) { return 180*x/Math.PI; }