<form id="hz9zz"></form>
  • <form id="hz9zz"></form>

      <nobr id="hz9zz"></nobr>

      <form id="hz9zz"></form>

    1. 明輝手游網中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

      C#系列圖文說明教程 [2]

      [摘要]本教程參考C#和ASP.NET程序設計教程撰寫,有什么不足之處請大家指出,或在老貓的理想BLOG留言。繼續上回,數組是我們經常用到的,我來介紹一下:數組是具有相同類型的一組數據。當訪問數組中的數據時,可以通過下標來指明。c#中數組元素可以為任何數據類型,數組下標從0開始,即第一個元素對應的下標為0...

      本教程參考C#和ASP.NET程序設計教程撰寫,有什么不足之處請大家指出,或在老貓的理想BLOG留言。繼續上回,數組是我們經常用到的,我來介紹一下:數組是具有相同類型的一組數據。當訪問數組中的數據時,可以通過下標來指明。c#中數組元素可以為任何數據類型,數組下標從0開始,即第一個元素對應的下標為0,以后逐個遞增。數組可以一維也可多維。
         //包含6個元素的一維整數數組;
          int[] mf1=new int[6]; //注意初始化數組的范圍,或者指定初值;
         //包含6個元素的一維整數數組,初值1,2,3,4,5,6
          int[] mf2=new int[6]{1,2,3,4,5,6};
          //一維字符串數組,如果提供了初始值設定項,則還可以省略 new 運算符
          string[] mf3={"c","c++","c#"};
          //一維對象數組
          Object[] mf4 = new Object[5] { 26, 27, 28, 29, 30 };
          //二維整數數組,初值mf5[0,0]=1,mf5[0,1]=2,mf5[1,0]=3,mf5[1,1]=4
          int[,] mf5=new int[,]{{1,2},{3,4}};
          //6*6的二維整型數組
          int[,] mf6=new mf[6,6];
         
          下面來看一個一維字符串數組的遍歷
          using System;
          public class MikeCat
          {
          static void PrintArray(string[] arr)
          {
          //打印數組元素,arr.Length 表示數組元素的個數
          for(int i=0;i<arr.Length;i++)
          {
          Console.WriteLine("arr[{0}]={1}",i,arr[i]);
          }
          }
          public static void Main()
          {
          string[] arr={"c","c++","c#"};
          //將數組作為一個參數傳遞
          PrintArray(arr);
          }
          }
      程序結果:arr[0]=c arr[1]=c++ arr[2]=c#
         
          下面來看一個4行2列(4*2)的整型數組的遍歷:
          using System;
          public class MikeCat
          {
          static void PrintArray(int[,] arr)
          {
          //通過兩次FOR循環遍歷二維數組
          for(int i=0;i<4;i++)//初始化i作為循環變量,i++實現該變量的自增運算。
          //for循環滿足條件后執行完循環體一次后執行i++,然后進入下次循環。簡單的c語法,這里做簡單介紹照顧初學者。(詳細可參閱譚浩強先生的c語言程序設計一書)
          {
          for(int j=0;j<2;j++)
          {
          Console.WriteLine("arr[{0},{1}]={2}",i,j,arr[i,j]);//打印每個二維數組元素
          }
          }
          }
          public static void Main()
          {
          //主函數
          //將數組作為一個參數傳遞
          PrintArray(new int[,]{{1,2},{3,4},{5,6},{7,8}};
          }
          }
       運行結果:arr[0,0]=1 arr[0,1]=2 arr[1,0]=3 arr[1,1]=4 arr[2,0]=5 arr[2,1]=6 arr[3,0]=7 arr[3,1]=8
         
         
          類是面向對象程序設計的基本構造塊,詳細我們在后面介紹。這里我們介紹兩個特殊的類,即object類和string類
          1.object類
          object類是預定義類System.Object的別名,它是所有其他類型的基類。c#中所有類型都直接或間接從object類中繼承。因此,一個object類的變量可以賦予任何類型的值。
         int i=30;
      object obj1;
      obj1=i;
      object obj2='a';
          2.string類
          string類專門用于對字符串的操作,他是預定義類System.String的別名
          string str1="mikecat";
          可以用"+"號連接兩個字符串。
          string str2="username:"+"mikecat";
          如果訪問單個字符,則要用下標。
          char c=str1[0];
          比較兩個字符串是否相等,可用比較操作符"=="http://有別于basic語法
          bool b=(str1==str2);

          c# 中,取消了c和c++中使用最靈活,也是最難掌握的指針。那么在c#中如何提供c/c++中的函數指針的功能?c#提供了委托(delegate),委托是繼承自System.Delegate類的引用類型。它相當于函數指針原型。與函數指針不同的是,委托在c#中是類型安全的,委托特別適合于匿名調用。要使用委托需經過三個步驟,即聲明、實例化、調用。
          using System;
          //聲明一個名為mfDelegate的委托,該委托有一個string類型的參數
          //c#編譯器編譯時會產生一個新類,該類繼承自System.Delegate,類
          //名為mfDelegate
          public delegate void mfDelegate(string name);
         
          public class MikeCat
          {
          //定義與mfDelegate有相同參數類型的方法Hello()
          public static void Hello(string name)
          {
          Console.WriteLine("您好,{0}!",name);
          }
          //定義與mfDelegate有相同參數類型的方法GoodBye()
          public static void GoodBye(string name)
          {
          Console.WriteLine("再見,{0}!",name);
          }
          public static void Main()
          {
          //創建一個mfDelegate實例 mf1
          mfDelegate mf1=new mfDelegate(Hello);
          //調用mf1
          mf1("mikecat");
          mfDelegate mf2=new mfDelegate(GoodBye);
          mf2("mikecat");
          //將mf1 mf2組合成一個新的委托mf3
          mfDelegate mf3=mf1+mf2;
          //調用mf3
          mf3("邁克老貓");
          //從組合的委托mf3中刪除mf1
          mfDelegate mf4=mf3-mf1;
          mf4("mikecat");
          }
          }
        程序結果:您好,mikecat!//mf1; 再見,mikecat!//mf2
         您好,邁克老貓! 再見,邁克老貓!//mf3
         再見,mikecat!//mf4


      日韩精品一区二区三区高清