C#/基礎筆記
基本語法
- 基本數據類型
- string :字符串
- int :整數
- dicimal :溫度,帶小數
- 變量賦值
- 必須先將值分配給變量(設置),然后才能從變量中檢索(獲取)值。
- 可通過在聲明時給變量賦值來初始化變量。
- 從右到左進行賦值。
- 使用單等號字符作為賦值運算符。
- 若要從變量中檢索值,只需使用變量的名稱。
- var 關鍵字:隱式類型
- var 關鍵字指示編譯器根據變量的初始化值來推斷變量的數據類型
在 C# 中執行基本字符串格式設置
- 字符轉義序列
- 使用轉義字符
\,需要使用反斜杠時,請對反斜杠 \ 使用轉義字符 \n序列將添加一個新行\t序列將添加一個制表符
- 使用轉義字符
- 可以通過轉義字符設置輸出格式
Console.WriteLine("Generating invoices for customer \"Contoso Corp\" ... \n");
Console.WriteLine("Invoice: 1021\t\tComplete!");
Console.WriteLine("Invoice: 1022\t\tComplete!");
Console.WriteLine("\nOutput Directory:\t");
Generating invoices for customer "Contoso Corp" ...
Invoice: 1021 Complete!
Invoice: 1022 Complete!
Output Directory:
- 逐字字符串字面量
@
Console.WriteLine(@" c:\source\repos
(this is where your code goes)");
c:\source\repos
(this is where your code goes)
- Unicode 轉義字符
- \u 轉義序列在文本字符串中添加編碼字符,然后使用四個字符的代碼表示 Unicode (UTF-16) 中的某些字符。
- 某些控制臺(例如 Windows 命令提示符)不會顯示所有 Unicode 字符。 它將用問號字符代替這些字符。 另外,此處使用的示例是 UTF-16。 有些字符需要 UTF-32,因此需要不同的轉義序列。
// To generate Japanese invoices:
// Nihon no seikyū-sho o seisei suru ni wa:
Console.Write("\n\n\u65e5\u672c\u306e\u8acb\u6c42\u66f8\u3092\u751f\u6210\u3059\u308b\u306b\u306f\uff1a\n\t");
// User command to run an application
Console.WriteLine(@"c:\invoices\app.exe -j");
Console.WriteLine("----日本の請求書を生成する");
日本の請求書を生成するには:
c:\invoices\app.exe -j
日本の請求書を生成する
使用字符串串聯合并字符串
- 字符串串聯是“程序員的表述”,指的是將兩個或更多 string 值簡單合并成一個新 string 值。
- 連接文本字符串和變量
"Hello " + firstName;
- 連接多個變量和文本字符串
string message = greeting + " " + firstName + "!";
- 避免中間變量
- 如果添加中間變量不會增加可讀性,則避免創建中間變量。
- EG
string firstName = "Bob";
string greeting = "Hello";
Console.WriteLine(greeting + " " + firstName + "!");
Hello Bob!
使用字符串內插合并字符串
- 字符串內插?
string message = greeting + " " + firstName + “!”;string message = $“{greeting} {firstName}!”;
- 文本字符串和變量值合并在一起
string firstName = "Bob";
string message = $"Hello {firstName}!";
Console.WriteLine(message);
- 多個變量和文本字符串一起使用
int version = 11;
string updateText = "Update to Windows";
string message = $"{updateText} {version}";
Console.WriteLine(message);
- 合并逐字文本和字符串內插
- 使用逐字文本。 可以同時使用逐字文本前綴符號 @ 和字符串內插 $ 符號
string projectName = "First-Project";
Console.WriteLine($@"C:\Output\{projectName}\Data");
- 許多環境中的控制臺可能不支持所有 Unicode 字符。 因此,由于編碼不匹配,Unicode 字符可能會顯示為問號
你的目標是編寫代碼,以設置具有特殊字符的字符串的格式,例如雙引號、新行、制表符和其他空格,以及 unicode 字符。 你還使用兩種不同的技術合并了字符串。
借助字符轉義序列,你通過使用特殊轉義序列或逐字字符串在文本字符串中添加特殊字符。 你在文本字符串中添加了來自日語漢字和俄語西里爾字母等其他語言集的 Unicode 字符。 你結合使用了簡單的字符串串聯和 + 符號,并升級到字符串內插,以便將值合并到字符串模板中。
如果沒法設置輸出的格式,則你會在可向用戶呈現哪些類型的信息方面嚴重受限。 但是,現在你可為用戶提供采用各種格式、符號和語言的復雜指令和反饋。
使用隱式數據轉換執行加法
- 添加兩個數值數據
int firstNumber = 12;
int secondNumber = 7;
Console.WriteLine(firstNumber + secondNumber);
19
- 混合數據類型以強制執行隱式類型轉換
string firstName = "Bob";
int widgetsSold = 7;
Console.WriteLine(firstName + " sold " + widgetsSold + " widgets.");
Bob sold 7 widgets.
- 添加數字和連接字符串的更高級情況
// 錯誤案例
string firstName = "Bob";
int widgetsSold = 7;
Console.WriteLine(firstName + " sold " + widgetsSold + 7 + " widgets.");
// 正確案例
string firstName = "Bob";
int widgetsSold = 7;
Console.WriteLine(firstName + " sold " + (widgetsSold + 7) + " widgets.");
// 錯誤案例
Bob sold 77 widgets.
// 正確案例
Bob sold 14 widgets.
- 括號符號 () 變成另一個重載運算符。 在這種情況下,左括號和右括號構成運算符運算的順序,就如你可以在數學公式中使用的那樣。 你指出希望首先解析內部括號,結果是 int 值 widgetsSold 和值 7 相加。 解析該內容后,它將會隱式轉換結果為字符串,以便可與消息的其余部分連接。

浙公網安備 33010602011771號