精通C#學習筆記---C#核心程式設計結構
C#核心程式設計結構
1.
每一個可執行的C#應用必須包含一個定義了Main方法的類。這個方法用來表示應用的入口點。所在的類,叫做應用程式物件。
class xxx
{
// Main四種形式
static void Main(string[] args);
static int Main(string[] args);
static void Main();
static int Main();
}
編譯時 /main用來指定用作入口點的Main方法。
// 通過函式呼叫獲取命令列引數
string[] theArgs = Environment.GetCommandLineArgs();
2.應該掌握的基礎設施
2.1.
Environment
System.Console
格式化控制檯輸出【Formatting Types】
string.Format(“”, …)// PresentationFramework.dll
System.Object
System.ValueType【該型別及其派生類,在棧上分配。非該型別,在堆上分配】
System.Boolean
System.Byte
System.Int32
System.UInt32
System.Char
System.String
System.Double
System.Object
System.DateTime
System.TimeSpan
System.Numerics.BigInteger // System.Numerics.dll
System.Text.StringBuilder
Type Conversion Tables
Enum
2.2.C#資料型別
bool System.Boolean
sbyte System.SByte -2^7, 2^7-1
byte System.Byte 0, 2^8-1
short System.Int16 2^15, 2^15-1
ushort System.UInt16 0, 2^16-1
int System.Int32 -2^31, 2^31-1
uint System.UInt32 0, 2^32-1
long System.Int64 -2^63, 2^63-1
ulong System.UInt64 0, 2^64-1
char System.Char 0x0000, 0xffff 【16位Unicode字元】
float System.Single -3.4*10^38, 3.4*10^38
double System.Double +/- 5.0*10^-324, +/- 1.7*10^308
decimal System.Decimal (-7.9*10^28, 7.9*10^28) / 10^0~28
string System.String Unicode字符集合,受記憶體限制
object System.Object 一切.NET型別的基類
所有內建資料型別都支援預設構造。
預設構造:
bool false
數值型別 0 / 0.0
char 單個空字元
BigInteger 0
DateTime 1/1/0001 12:00:00 AM
物件引用 NULL
C#字串字面量中可以包含各種轉義字元,用來限制字元資料怎樣被輸到輸出流中
\’ ’
\” ”
\ \
\a
\n
\r
\t
以@為字首的字串字面量記法,稱逐字字串。
使用逐字字串可以使對一個字面量的轉義字元的處理失效並輸出字串。【此時,可以通過重複”標記向一個字面量字串插入一個雙引號】
System.String:一旦將初始值賦給字串物件,字元資料就不能改變了。
System.Text.StringBuilder 呼叫這個型別的成員時,都是直接修改物件內部的字元資料。
3.窄化和寬化
寬化用於定義隱式向上轉換,不會導致資料丟失。
窄化時,須使用強制型別轉換。【(目標型別)】
C#提供checked關鍵字,當把一個語句(或者語句塊)包裝在checked關鍵字域內時,C#編譯器會使用額外CIL指令,測試資料溢位。如果發生溢位,產生執行時異常:System.OverflowException。也可編譯時,用 /checked標誌。將檢測專案內所有溢位。
unchecked,用於將其包圍的域內,禁止溢位檢查。
4.隱式型別本地變數
var VariableName = InitialValue; // 依據本地資料點的初始值自動推斷實際的資料型別。
var只能用於方法或屬性範圍內的本地變數。且必須在宣告時分配初始值,初始值不能是null。隱式型別資料是強型別資料【型別一經確定,即是不可變的】
用var關鍵字定義返回值,引數,自定義型別的欄位資料,都是不合法的。
主要用在LINQ查詢的返回資料。
5.C#迭代結構
for
foreach/in【in關鍵字後面可以是任何實現IEnumerable介面的類】
while
do/while
if/else【只能作用於布林表示式】
switch【除了數值資料外,還可以計算字串資料,列舉型別】
相關文章
- 精通C#學習筆記--C# 與 .NET平臺C#筆記
- 【C#學習筆記】結構體使用C#筆記結構體
- 結構化程式設計--學習筆記程式設計筆記
- C#設計模式學習筆記:設計原則C#設計模式筆記
- C#學習筆記(六)——物件導向程式設計簡介C#筆記物件程式設計
- C#學習筆記C#筆記
- C#程式設計學習(04):基本操作學習總結C#程式設計
- c# 程式設計學習(四)C#程式設計
- C#程式設計學習(一)C#程式設計
- c# 程式設計學習(二)C#程式設計
- C#設計模式學習筆記:(9)組合模式C#設計模式筆記
- C#特性學習筆記C#筆記
- C#字串學習筆記C#字串筆記
- C#學習筆記2C#筆記
- c#學習筆記(一)C#筆記
- 【C#學習筆記】類建構函式使用C#筆記函式
- 【C#學習筆記】Hello WorldC#筆記
- C#學習筆記(一) (轉)C#筆記
- C#高階程式設計 讀書筆記C#程式設計筆記
- freeRTOS核心學習筆記(1)-程式設計標準筆記程式設計
- 我的C#學習筆記14C#筆記
- 我的C#學習筆記1C#筆記
- unity學習筆記-C#協程Unity筆記C#
- 【C#學習筆記】函式呼叫C#筆記函式
- 【C#學習筆記】陣列使用C#筆記陣列
- 【C#學習筆記】指標使用C#筆記指標
- 【C#學習筆記】改變字型C#筆記
- 【C#學習筆記】讀檔案C#筆記
- 【C#學習筆記】寫檔案C#筆記
- C#學習筆記--複雜資料型別、函式和結構體C#筆記資料型別函式結構體
- 【C#學習筆記】List容器使用C#筆記
- 【C#學習筆記】儲存檔案C#筆記
- 【C#學習筆記】Dictionary容器使用C#筆記
- 【C#學習筆記】函式過載C#筆記函式
- 【C#學習筆記】播放wav檔案C#筆記
- 【C#學習筆記】型別轉換C#筆記型別
- 【C#學習筆記】smtp發郵件C#筆記
- C#多執行緒學習筆記C#執行緒筆記