在C#中,其實也並不一定是在C#,在java、C、C++中構成程序的,也無非就是關鍵字,表達式和運算語句。
C#中的關鍵字:
其實沒中語言中都是有關鍵字的,這裏給出C#中的部分關鍵字,這些關鍵字在變量命名的時候是不能夠被使用的:
abstract event new struct as explicit null switch base extern object this bool false operator throw break finally out true byte fixed override try case float params typeof catch for private uint char foreach protected ulong checked goto public unchecked class if readonly unsafe const implicit ref ushort continue in return using decimal int sbyte virtual default interface sealed volatile delegate internal short void do is sizeof while double lock stackalloc else long static enum namespace string
上下文關鍵字
get partial set value where yield
C#中的語句:程序所執行的操作以“語句”表達。常見操作包括聲明變量、賦值、調用方法、循環訪問集合,以及根據給定條件分支到一個或另一個代碼塊。 語句在程序中的執行順序稱爲“控制流”或“執行流”。 根據程序對運行時所收到的輸入的響應,在程序每次運行時控制流可能有所不同。
語句可以是以分號結尾的單行代碼,或者是語句塊中的一系列單行語句。語句塊括在括號 {} 中,並且可以包含嵌套塊。 下面的代碼演示兩個單行語句示例和一個多行語句塊:
static void Main()
{
// 定義語句.
int counter;
// 賦值欲絕
counter = 1;
int[] radii = { 15, 32, 108, 74, 9 }; // 聲明和定義語句.
const double pi = 3.14159; // 定義和聲明一個常量的語句.
// foreach的循環語句.
foreach (int radius in radii)
{
double circumference = pi * (2 * radius);
System.Console.WriteLine("Radius of circle #{0} is {1}. Circumference = {2:N2}",
counter, radius, circumference);
counter++;
}
}
}
語句的類型
在C#中的語句類型有很多,下面給出C#中一些基本的語句類型:
聲明語句:聲明語句引入新的變量或常量。變量聲明可以選擇爲變量賦值。 在常量聲明中必須賦值。
double area;
double radius = 2;
const double pi = 3.14159;
表達式語句:
用於計算值的表達式語句必須在變量中存儲該值
// Expression statement (assignment).
area = 3.14 * (radius * radius);
System.Console.WriteLine();
System.Collections.Generic.List<string> strings =
new System.Collections.Generic.List<string>();
選擇語句:選擇語句用於根據一個或多個指定條件分支到不同的代碼段。if, else, switch, case
迭代語句:迭代語句用於遍歷集合(如數組),或重複執行同一組語句直到滿足指定的條件。do, for, foreach, in, while
跳轉語句:跳轉語句將控制轉移給另一代碼段。break, continue, default, goto, return,yield
異常處理語句:異常處理語句用於從運行時發生的異常情況正常恢復。throw, try-catch, try-finally, try-catch-finally
檢查和未檢查語句:檢查和未檢查語句用於指定當將結果存儲在變量中、但該變量過小而不能容納結果值時,是否允許數值運算導致溢出。
await 語句:如果標記與 異步 修飾符的方法,在方法可以使用 等待 運算符。當控件移到在異步方法中的一個await 表達式,控件回調用方,因此,在方法的進度掛起,直到等待任務完成。 當任務完成後,執行在方法可以恢復。
yield return 語句:迭代器對集合的自定義迭代,如列表或數組。迭代器使用將返回語句返回每個元素一個節點。 當
yield return 語句時,代碼的當前位置確保。迭代器當下次時,調用執行從該位置進行重新啓動。
fixed 語句:Fixed 語句禁止垃圾回收器重定位可移動的變量。
lock 語句:lock 語句用於限制一次僅允許一個線程訪問代碼塊。
標記語句:可以爲語句指定一個標記,然後使用 goto關鍵字跳轉到該標記語句。
空語句:空語句只含一個分號。 空語句不執行任何操作,可以在需要語句但不需要執行任何操作的地方使用。
C#中的表達式:
表達式”是由一個或多個操作數以及零個或零個以上的運算符所組成的序列,可以通過計算得到一個值、對象、方法或命名空間等結果。表達式可以包含文本值、方法調用、運算符及其操作數,或簡單名稱。 簡單名稱可以是變量、類型成員、方法參數、命名空間或類型的名稱。
表達式可以使用運算符,而運算符又可以將其他表達式用作參數,或者使用方法調用,而方法調用的參數又可以是其他方法調用,因此表達式既可以非常簡單,也可以非常複雜。
((x < 10) && ( x > 5)) || ((x > 20) && (x < 25))
System.Convert.ToInt32("35")
C#中的運算符:
在 C# 中,運算符是應用於表達式或語句中一個或多個操作數的程序元素。 接受一個操作數的運算符稱爲“一元”運算符,例如增量運算符 (++) 或new。 接受兩個操作數的運算符稱爲“二元”運算符,例如算術運算符 +、-、*、/。 條件運算符 ?: 接受三個操作數,是 C# 中唯一的三元運算符。
運算符的優先級和結核性: