国产成人精品999视频&日本一区二区亚洲人妻精品&久久久精品国产99久久精&99热这里只有成人精品国产&精品国产剧情av一区二区&成人亚洲精品久久久久app&国产精品美女高潮抽搐A片

C# 備忘清單

提供基本語法和方法的 C# 快速參考備忘單

入門

Hello.cs

class Hello {
  // main method
  static void Main(string[] args)
  {
    // 輸出: Hello, world!
    Console.WriteLine("Hello, world!");
  }
}

編譯運(yùn)行(確保在項目目錄下)

$ dotnet run
Hello, world!

變量

int intNum = 9;
long longNum = 9999999;
float floatNum = 9.99F;
double doubleNum = 99.999;
decimal decimalNum = 99.9999M;
char letter = 'D';
bool @bool = true;
string site = "jaywcjlove.github.io";
var num = 999;
var str = "999";
var bo = false;

原始數(shù)據(jù)類型

數(shù)據(jù)類型尺寸范圍
int4 bytes-2^31^ ^to^ 2^31^-1
long8 bytes-2^63^ ^to^ 2^63^-1
float4 bytes6 ^to^ 7 decimal digits
double8 bytes15 decimal digits
decimal16 bytes28 ^to^ 29 decimal digits
char2 bytes0 ^to^ 65535
bool1 bittrue / false
string2 bytes per charN/A

注釋

// 單行注釋
/* 多行
   注釋 */
// TODO:向 Visual Studio 中的任務(wù)列表添加注釋
/// 用于文檔的單行注釋
/** 多行 注釋 
    用于文檔 **/

字符串

string first = "John";
string last = "Doe";
// 字符串連接
string name = first + " " + last;
Console.WriteLine(name); // => John Doe

查看: C#字符串

用戶輸入

Console.WriteLine("Enter number:");
if(int.TryParse(Console.ReadLine(),out int input))
{
  // 輸入驗(yàn)證
  Console.WriteLine($"You entered {input}");
}

條件判斷

int j = 10;
if (j == 10) {
  Console.WriteLine("I get printed");
} else if (j > 10) {
  Console.WriteLine("I don't");
} else {
  Console.WriteLine("I also don't");
}

數(shù)組

char[] chars = new char[10];
chars[0] = 'a';
chars[1] = 'b';
string[] letters = {"A", "B", "C"};
int[] mylist = {100, 200};
bool[] answers = {true, false};

循環(huán)

int[] numbers = {1, 2, 3, 4, 5};
for(int i = 0; i < numbers.Length; i++) {
  Console.WriteLine(numbers[i]);
}

foreach(int num in numbers) {
  Console.WriteLine(num);
}

C# 字符串

字符串連接

string first = "John";
string last = "Doe";
string name = first + " " + last;
Console.WriteLine(name); // => John Doe

字符串插值

string first = "John";
string last = "Doe";
string name = $"{first} {last}";
Console.WriteLine(name); // => John Doe

字符串成員

成員說明
Length返回字符串長度的屬性
Compare()比較兩個字符串的靜態(tài)方法
Contains()確定字符串是否包含特定的子字符串
Equals()確定兩個字符串是否具有相同的字符數(shù)據(jù)
Format()通過 {0} 表示法和使用其他原語格式化字符串
Trim()從尾隨和前導(dǎo)字符中刪除特定字符的所有實(shí)例。 默認(rèn)刪除前導(dǎo)和尾隨空格
Split()刪除提供的字符并從兩側(cè)的剩余字符中創(chuàng)建一個數(shù)組

逐字字符串

string longString = @"I can type any characters in here !#@$%^&*()__+ '' \n \t except double quotes and I will be taken literally. I even work with multiple lines.";

成員示例

// 使用 System.String 的屬性
string lengthOfString = "How long?";
lengthOfString.Length           // => 9
// 使用 System.String 的方法
lengthOfString.Contains("How"); // => true

頻繁字符串拼接

var sb = new StringBuilder();
for (int i = 0; i < 100; i++)
{
    sb.Append(i.ToString());
}
Console.WriteLine(sb.ToString());
// => 123456789....

對于頻繁拼接字符串的場景(如:成百上千次循環(huán)),使用 System.Text.StringBuilder 提升性能

原始字符串文本

// C#11 語法, 至少3個雙引號(""")開頭和結(jié)尾,內(nèi)容可以輸入任何原始字符
// 單行: 左引號,右引號,內(nèi)容 三者同行
string singleLine = """Content begin "Hello World!" end.""";

// 多行:左引號,右引號各一行,內(nèi)容需與右引號縮進(jìn)對齊
string multiLine = """
    Content begin "Hello World!" /\n<>"" end.
    """;
Console.WriteLine(multiLine); // => Content begin "Hello World!" /\n<>"" end.

字符串操作

//字符串分割
string Name = "字A符A串A分A割";
string[] Names=Name.Split(new char[] { 'A' });
//會以A為媒介把字符串分成若干份
for (int i = 0; i < Names.Length; i++)
{
    Console.Write(Names[i]);
}
//-----------------------------------
//字符串截取
string Str = "字符串截取";
Str = Str.Substring(2, 1);
Console.WriteLine(Str);
//輸出結(jié)果“串”,意為從第二個下標(biāo)開始截取一位字符
//-----------------------------------
//字符串替換
string Rep = "字符1替換";
Rep = Rep.Replace("1", "串");
Console.WriteLine(Rep);
//會把字符中的 “1”替換成“串”

雜項

常用 .NET 概念

概念中文名定義
Runtime運(yùn)行時執(zhí)行給定的已編譯代碼單元所需的服務(wù)集合
Common Language Runtime (CLR)通用語言運(yùn)行庫主要定位、加載和托管 .NET 對象。
CLR 還處理內(nèi)存管理、應(yīng)用程序托管、線程協(xié)調(diào)、執(zhí)行安全檢查和其他低級細(xì)節(jié)
Managed code托管代碼.NET 運(yùn)行時編譯和運(yùn)行的代碼。 C#/F#/VB 就是例子
Unmanaged code非托管代碼直接編譯為機(jī)器代碼且不能由 .NET 運(yùn)行時直接托管的代碼。
不包含空閑內(nèi)存管理、垃圾收集等。從 C/C++ 創(chuàng)建的 DLL 就是示例