C#语言知识汇总

    这段时间一直再看Asp.net的相关视频,通过天轰穿的视频,还有北大青鸟的视频,感受到了.net平台的功能强大,而.net平台的主打语言就是C#,这里先简单总结一下,C#语言的相关知识,再总结Asp.net平台上的各种知识。

     

    先看一下我总结的总体思路:

C#语言知识汇总_第1张图片


  下边我从这个四个方面简单总结:


    一,基础知识:这是很多语言都有的,可以通过比较的方式来学习,例如与VB的比较,因为任何一门语言都有这些东西,他们的相同点很多,但也有细微的差别:

C#语言知识汇总_第2张图片

       这是比较多大的一节,虽然基础,但是感觉还是总结一下,方便一下查看:


     1,数据类型:



     (1),值类型:

          整数类型

 

数据类型

说明

取值范围

对应于System程序集中的结构

sbyte

有符号8位整数

-128-127

SByte

byte

无符号8位整数

0-255

Byte

short

有符号16位整数

-32768-32767

Int16

ushort

无符号16位整数

0-65535

UInt16

Int

有符号32位整数

-2147489648-2147483647

Int32

uint

无符号32位整数

0-42994967295

UInt32

long

有符号64位整数

-263-263

Int64

ulong

无符号64位整数

0-264

UInt64


     字符类型

          C#中采用Unicode字符集来表示字符类型。


     实数类型

 

数据类型

说明

取值范围

float

32位单精度实数

1.5*10-45-3.4*1038

double

64位双精度实数

5.0*10-324-1.7*10308

demcimal

128位十进制实数

1.0*10-28-7.9*1028


     布尔(bool)类型

    取值只能是ture或者false,bool类型对应于.NET类库中的System.Boolean结构。它在计算机中占4个字节,即32位存储空间。


      结构类型

        把一系列相关的信息组织成为一个单一实体的过程,这就是创建一个结构的过程。

structperson

{

string m_name; //姓名

int m_age; //年龄

string m_sex; //性别

}

      枚举类型

主要用于表示一个逻辑相关联的项和组合。使用关键字enum来定义。

enumWeekday

{

Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday

}

 


    (2),引用类型:

     Object类型::其他类型都是直接或者间接从Object继承的,可以将任何类型的值赋给Object类型的变量。

     String类型:表示Unicode字符的字符串。其内容是不可变的。

例子:

     string a ="hello";

     string  c="h";

     c=c+"ello";

     console.writeline(a==c);

    console.writeline((object)a==(object)c);

  这是的返回值为True False,这就是说起内容相同,但是引用的字符串实例不同。

 类(class)

类是一组具有相同数据结构和相同操作的对象集合。类和结构之间的根本区别在于:结构是值类型,而类是引用类型。对于值类型,每个变量直接包含自身的所有数据,每创建一个变量,就在内存中开辟一块区域;而对于引用类型,每个变量只存储对目标存储数据的引用,每创建一个变量,就增加一个指向目标数据的指针。

接口(interface)

应用程序之间要相互调用,就必须事先达成一个协议,被调用的一方在协议中对自己所能提供的服务进行描述。在C#中,这个协议就是接口。接口定义中对方法的声明,既不包括访问限制修饰符,也不包括方法的执行代码。如果某个类继承了一个接口,那么它就要实现该接口所定义的服务。也就是实现接口中的方法。

委托(delegate

委托用语封装某个方法的调用过程。

委托的使用过程分为3步:

1.定义 delegate void HelloDelegate();

2.实例化HelloDelegate hd = new HelloDelegate(p1.Say); //p1.Say调用的方法

3.调用 hd();


2,数据类型转换:


C#语言知识汇总_第3张图片


3,运算符:

(1),赋值运算符:

C#语言知识汇总_第4张图片


(2),比较运算符:

C#语言知识汇总_第5张图片


(3),运算符优先级:

C#语言知识汇总_第6张图片


(4),运算符汇总:

C#语言知识汇总_第7张图片



  二,语句控制汇总:这是将上边基础知识串联起来的关键:


C#语言知识汇总_第8张图片



  三,数组与集合:


C#语言知识汇总_第9张图片


下边把两个例子补上:

第一个数组的例子:


class Program    {
        static void Main(string[] args)
        {
            //声明一个三维数组
            int[, ,] arr3;
            //初始化该三维数组
            arr3 = new int[,,] { { { 1, 2, 3 } }, { { 4, 5, 6 } } };
            //使用Foreach语句遍历数组并输出
            foreach (int i in arr3)
            {
                Console.WriteLine(i);
            }

        }
    }


第二个集合的例子:


class Program
    {
        static void Main(string[] args)
        {
            //实例化一个ArrayList对象
            ArrayList arrlist = new ArrayList();
          //使用Add方法向ArrayList中添加元素,将元素添加到ArrayList对象的末尾
            arrlist.Add("苹果");
            arrlist.Add("香蕉");
            arrlist.Add("葡萄");
            foreach (int n in new int[3] { 0, 1, 2 })
            {
                arrlist.Add(n);
            }
            //移除值为0的第一个元素
            arrlist.Remove(0);
            //移除当前索引为3的元素,即第4个元素
            arrlist.RemoveAt (3);
            //在指定索引处添加一个元素
            arrlist.Insert(1, "apple");
            //遍历Arrlist,并输出所有元素
            for(int i =0;i

对应输入信息:

C#语言知识汇总_第10张图片


  四,C#面向对象编程,我把我以前写过的两篇博客放在这里,通过一个有趣的例子很好的把编程里边的概念进行了学习。

C# VS面向对象编程(一)    C# VS面向对象编程(二)



综上为C#知识的简单总结,下篇博客将开始总结ASP.NET上的相关知识!


你可能感兴趣的:(C#)