类库探源——System.Math 和 Random

一、System.Math

Math类:为三角函数、对数函数和其他通用数学函数提供常数和静态方法

命名空间: System

程序集 :   mscorlib.dll

继承关系:

常用属性:

Math.E     表示自然对数的底(e)

Math.PI    圆周率(π)

常用方法:

Math.Abs(整数、浮点数)                绝对值

Math.Sin                                    正弦

Math.Cos                                    余弦

Math.Tan                                   正切

Math.Asin                                  反正弦

Math.Acos                                  反余弦

Math.Atan                                 反正切

Math.Max                                  返回较大数

Math.Min                                  返回较小数

Math.Pow                                  求幂

Math.Sqrt                                 平方根

Math.Log(double d)                   以(e)为底的自然对数

Math.Log10(double d)                以10为底的对数

Math.Log(double a,double newBase)          求以newBase为底的a的对数

代码:

using System;

class App
{
    static void Main()
    {
        // Math的常用属性和方法
        Console.WriteLine(Math.E);
        Console.WriteLine(Math.PI);
        Console.WriteLine(Math.Abs(-11));
        Console.WriteLine(Math.Sqrt(3));    // 平方根
        Console.WriteLine(Math.Pow(3,4));  // 81
        Console.WriteLine(Math.Log(81,3));    // 以3为底的81的对数
        Console.WriteLine(Math.Log10(100));    // 2
        Console.WriteLine(Math.Log(100));    // 自然对数
        Console.WriteLine(Math.Max(12,11.2)); // 12
        Console.WriteLine(Math.Min(12,11.2)); // 11.2

        // 角度换弧度 已知 Sin(90°) = 1 Cos(90°)=0 Tan(45°) = 1
        double angle_90    = Math.PI * 90.0 / 180.0;
        double angle_45    = Math.PI * 45.0 / 180.0;
        Console.WriteLine(angle_90);
        Console.WriteLine(angle_45);

        // 注意浮点数和参考值比较是 Abs(Value - 参考值) < eps 的模式
        Console.WriteLine(Math.Cos(angle_90));
        Console.WriteLine(Math.Sin(angle_90));
        Console.WriteLine(Math.Tan(angle_45));
    }
}

二、System.Random

Random 类:表示伪随机数生成器,一种能够产生满足某些随机性统计要求的数字序列的设备

命名空间: System

程序集:   mscorlib.dll

继承关系:

备注:

伪随机数是以相同的概率从一组有限的数字中选取的。所选数字并不具有完全的随机性,因为它们是用一种确定的数学算法选择的,但是从实用的角度而言,其随机程度已足够了

构造器:

Random()

Random(Int32)

常用实例方法:

Next()                   返回非负随机数

Next(Int32)           返回小于指定数的非负随机数

Next(Int32,Int32)   返回一个在制定范围内的非负随机数

NextDouble            返回一个介于 0.0 和 1.0 之间的随机数

代码:

using System;

class App
{
    static void Main()
    {
        Random r1 = new Random();
        Random r2 = new Random(93);

        Console.WriteLine(r1.Next());
        Console.WriteLine(r1.Next(45));
        Console.WriteLine(r1.Next(32,45));
        Console.WriteLine(r1.NextDouble());
        Console.WriteLine();

        Console.WriteLine(r2.Next());
        Console.WriteLine(r2.Next(45));
        Console.WriteLine(r2.Next(32,45));
        Console.WriteLine(r2.NextDouble());
    }
}

时间: 2024-10-04 23:22:37

类库探源——System.Math 和 Random的相关文章

类库探源——System.Delegate

一.MSDN 描述 Delegate 类:表示委托,委托是一种数据结构,它引用静态方法或引用类实例及该类的实例方法.(是不是感觉很像C语言中的函数指针 :) ) 命名空间: System 程序集:   mscorlib.dll 说到 Delegate 就必须谈 MulticastDelagate MulticastDelagate类 :表示多路广播委托:即,其调用列表中可以拥有多个元素的委托. 命名空间: System 程序集:   mscorlib.dll 继承关系: 备注: 1. Deleg

类库探源——System.String

一.MSDN描述 String 类: 表示文本,即一系列的 Unicode 字符 命名空间 : System 程序集 : mscorlib.dll 继承关系: 备注: 1. 字符串是 Unicode 字符的有序集合,用于表示文本.String 对象是 System.Char 对象的有序集合,用于表示字符串. 2. String 对象的值是该有序集合的内容,值不可变,所以String对象称为不可变的 string str1 = "3"+"b"; 这句话设计到1个Str

类库探源——System.Drawing.Bitmap

一.System.Drawing.Bitmap Bitmap 类: 封装GDI+ 位图,此位图由图形图像及其属性的像素数据组成.Bitmap 是用于处理由像素定义的图像的对象 命名空间: System.Drawing 程序集:   System.Drawing.dll 继承关系: 原型定义: [SerializableAttribute] [ComVisibleAttribute(true)] public sealed class Bitmap : Image 备注:GDI+ 支持下列文件格式

类库探源——System.Configuration 配置信息处理

按照MSDN描述 System.Configuration 命名空间 包含处理配置信息的类型 本篇文章主要两方面的内容 1. 如何使用ConfigurationManager 读取AppSetting和ConnectionStrings 2. 如何使用自定义 Section,我这里的自定义Section格式为 <SectionName> <services> 服务1的描述信息,供IoC容器使用 服务2的描述信息,供IoC容器使用 ... </services> <

类库探源——System.ValueType

一.MSDN描述 ValueType 类:提供值类型的基类 命名空间: System 程序集:   mscorlib.dll 继承关系: 值类型包括:字符.整数.浮点.布尔.枚举.结构(其实字符.整数.浮点.布尔是结构,下面会说明) 二.值类型花名册 1. 字符 Char 结构: 表示一个 Unicode 字符. 命名空间:   System 程序集   : mscorlib.dll 原型定义: [SerializableAttribute] [ComVisibleAttribute(true)

类库探源——System.Environment

Environment 类: 提供有关当前环境和平台的信息以及操作它们的方法.此类不能被继承. 命名空间: System 程序集:   mscorlib.dll 继承关系: 常用属性(字段)和方法: CurrentDirectory      获取或设置当前工作目录的完全限定路径 OSVersion             获取包含当前平台标识符和版本号的 OperatingSystem 对象. GetLogicalDrives      返回包含当前计算机中的逻辑驱动器名称的字符串数组. Ge

类库探源——System.Type

一.MSDN 描述 Type 类:表示类型声明:类类型.接口类型.数组类型.值类型.枚举类型.类型参数.泛型类型定义.以及开放或封闭构造的泛型类型. 命名空间: System 程序集:mscorlib.dll 继承关系: 从上面的继承关系能看出,Type和反射有关系,的确,引用MSDN上的话Type 为 System.Relection 功能的根也是访问元数组的主要方式. 二.获取 Type 的几种方式: 1. typeof 运算符 1 var type1 = typeof(TypeName);

类库探源——System.Drawing

一.System.Drawing 命名空间简述 System.Drawing 命名空间提供访问 GDI+ 的基本功能,更高级的功能在 System.Drawing.Drawing2D,System.Drawing.Imaging 和 System.Drawing.Text 命名空间 程序集: System.Drawing.dll 二.System.Drawing.Image 简述 Image 类:为源自 Bitmap 和 Metafile 的类提供功能的抽象基类 命名空间: System.Dra

黑马程序员(Java)----API之常用类(Math、Random、System、BigInteger、Date和DateFormat、Calendar)

------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 4.9  Math Math 类包含用于执行基本数学运算的方法,如初等指数.对数.平方根和三角函数. 4.9.1 常用变量和方法 成员变量: public static final double PI public static final double E 成员方法: public static int abs(int a):绝对值 public static double ceil(dou