.Net编程基础知识总结

1.数据类型是必不可少的根本,接下来我来讲述一下我对自己常用.Net数据类型的了解.

          <值类型>

                    数据数值类:   int           范围:(-2147483648~2147483647)有符号整数(4字节Int32,'long'8字节Int64,'short'2字节Int16)

                                              float       范围:(1.5*10^-45~3.4*10^38)单精度32位数字

                                              double   范围:(-1.79769313486232e308~1.79769313486232e308)双精度64位数字

                                              byte        范围:(0~255)无符号整数

                                              decimal 范围:(1*10^-28~7.9*10^2)十进制数字

                                              Boolean 范围:(True OR False)关键字:bool

                                              Char       范围:(0~65535)整数Unicode字符

          <引用类型>

                    Class          类

                                   《new, this, base, static    装箱'值类型转化成对象类型',拆箱'对象类型转化成值类型'》

                    Interface    接口

                    Dynamic     动态类型

                    Object         大父类

                    String          字符串

                                  《常用方法:Trim——'去除字符串头尾两端的指定字符';转义字符:"\";对字符串进行修改使用StringBuilder,修改的是本对象而不是新对象》

                    Delegate     委托

                    Array           数组

                    Var              匿名类型

2.运算符和基础语句

         

     运算符类别                                 运算符表示符号
           基本x.y   f(x)   a[x]   x++  x--   new   typeof   chaecked   ->
           一元+   -   !   ~   ++X   --X   (T)x   True   False   &   sizeof
           乘法*     /     %
           加法+      -
           变换<<       >>
     关系类型检测<     >     <=    >=    is    as
            相等==        !=
      逻辑"与" '或'&   |
            条件 &and             || OR
         条件运算?:
             赋值=  +=   -=   *=   /=   %=     &=   |=   ^=    <<=     >>=    ??
  
  
  

分支语句

       三元运算符

              (……)?b:c             

       值可能为空时的取值方式

              (s == null) ? "" :s; 

        if else语句

                    if(){} 

                    else if(){} 

                    else{} 

         switch语句 switch(var) 

                    { 

                         case <value>: …… break; 

                         default: …… break; 

                     } 

迭代语句

         do/while循环

                     do  

                    {……} 

                    while(<test>); 

          while循环

                    while(<test>

                    {……} 

          for循环

                    for(<初始化>;<条件>;<操作>

                    {……} 

          foreach,in循环

                    foreach(<baseType> <name> in <array>

                    {……} 

跳转语句

              break            continue           goto             return

一场块语句

             throw          try-catch-finally     

3.Net方法

           方法访问修饰符

                    private:      私有的,类本身才能访问

                    protected:受保护的,类本身及派生类可以访问

                    internal:    内部的,同一程序集内部类型才可以访问

                    public:       公共的,内部与外部都可以访问

              irtual   虚拟的              static   静态的               abstract    抽象的             sealed     封闭的             override   继承的                                

            main方法

            重载方法:  定义一组名字相同的成员,他们的参数数量或者类型不同

            泛型方法:  static void 方法名<T>(参数类型 参数)

4.Net索引器 

     索引器允许类或结构的实例按照与数组相同的方式进行索引。索引器类似于属性,不同之处在于它们的访问器采用参数。

           特性:

                索引器使得对象可按照与数组相似的方法进行索引。

                get 访问器返回值。set 访问器分配值。

                this 关键字用于定义索引器。

                value 关键字用于定义由 set 索引器分配的值。

                索引器不必根据整数值进行索引,由您决定如何定义特定的查找机制。

                索引器可被重载。

                索引器可以有多个形参,例如当访问二维数组时

       代码示例:

class SampleCollection<T> 
{ 
    private T[] arr = new T[100]; 
    public T this[int i] 
    { 
        get 
        { 
            return arr[i]; 
        } 
        set 
        { 
            arr[i] = value; 
        } 
    } 
} 
class Program 
{ 
    static void Main(string[] args) 
    { 
        SampleCollection<string> stringCollection = new SampleCollection<string>(); 
        stringCollection[0] = "Hello, World"; 
        System.Console.WriteLine(stringCollection[0]); 
    } 
}  


5.Net迭代器

      只需提供一个迭代器,即可遍历类中的数据结构。当编译器检测到迭代器时,它将自动生成 IEnumerable 或 IEnumerable<T> 接口的 Current、MoveNext 和 Dispose 方法。

     迭代器是可以返回相同类型的值的有序序列的一段代码。

     迭代器可用作方法、运算符或 get 访问器的代码体。

     迭代器代码使用 yield return 语句依次返回每个元素。yield break 将终止迭代。

     可以在类中实现多个迭代器。每个迭代器都必须像任何类成员一样有唯一的名称,并且可以在 foreach 语句中被客户端代码调用,如下所示:foreach(int x in SampleClass.Iterator2){}

     迭代器的返回类型必须为 IEnumerable、IEnumerator、IEnumerable<T> 或 IEnumerator<T>。

代码示例

public class DaysOfTheWeek : System.Collections.IEnumerable 
{ 
    string[] m_Days = { "Sun", "Mon", "Tue", "Wed", "Thr", "Fri", "Sat" }; 
    public System.Collections.IEnumerator GetEnumerator() 
    { 
        for (int i = 0; i < m_Days.Length; i++) 
        { 
            yield return m_Days[i]; 
        } 
    } 
} 
class TestDaysOfTheWeek 
{ 
    static void Main() 
    { 
        DaysOfTheWeek week = new DaysOfTheWeek(); 
        foreach (string day in week) 
        { 
            Syste


 

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值