0Pricing
C# Academy · บทเรียน

สตริงและข้อความ: เปลี่ยนแปลงไม่ได้ การแทรกค่า verbatim, StringBuilder และการเปรียบเทียบ

ทำความเข้าใจการเปลี่ยนแปลงไม่ได้ของสตริง ใช้การแทรกค่า สตริงแบบเอสเคปและ verbatim สร้างข้อความอย่างมีประสิทธิภาพด้วย StringBuilder เปรียบเทียบอย่างปลอดภัย และทบทวนพื้นฐาน char/Unicode

สตริงและข้อความ: เปลี่ยนแปลงไม่ได้ การแทรกค่า verbatim, StringBuilder และการเปรียบเทียบ เป็นบทเรียน C# Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 1 จากทั้งหมด 3 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน C# Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส C# Academy มีบทเรียนทั้งหมด 3 บทเรียน

ภาพรวมข้อความ

เป้าหมาย: ใช้สตริงอย่างปลอดภัยและมีประสิทธิภาพ

  • ความไม่เปลี่ยนแปลง
  • การแทรกค่าและลำดับหลีก
  • สตริงแบบตามตัวอักษร
  • StringBuilder
  • ข้อควรทราบเกี่ยวกับการเปรียบเทียบและวัฒนธรรม

ความไม่เปลี่ยนแปลง

ไม่เปลี่ยนแปลง: เมธอดอย่าง ToUpper หรือ Replace จะส่งคืนสตริงใหม่ ส่วนสตริงเดิมยังคงเหมือนเดิม

using System;

public class Program
{
  public static void Main(string[] args)
  {
    string s = "hello";
    string upper = s.ToUpper();           // new string
    Console.WriteLine("s = " + s);        // hello
    Console.WriteLine("upper = " + upper);// HELLO

    string replaced = s.Replace("h", "y"); // new string
    Console.WriteLine("replaced = " + replaced);
  }
}

การแทรกค่าและลำดับหลีก

การแทรกค่าใช้ $"..." ลำดับหลีกที่พบบ่อย ได้แก่ \\n บรรทัดใหม่ \\" เครื่องหมายอัญประกาศ และ \\\\ แบ็กสแลช

using System;

public class Program
{
  public static void Main(string[] args)
  {
    string name = "Ada";
    int score = 95;

    // C# 6 string interpolation and escapes
    string msg = $"Hi {name}, score = {score}";
    string quoted = "She said \"hi\"";
    string line = "first line\nsecond line";

    Console.WriteLine(msg);
    Console.WriteLine(quoted);
    Console.WriteLine(line);
  }
}

สตริงแบบตามตัวอักษร

สตริงแบบ ตามตัวอักษร เริ่มต้นด้วย @ เหมาะสำหรับเส้นทางของ Windows และข้อความหลายบรรทัด

using System;

public class Program
{
  public static void Main(string[] args)
  {
    // Verbatim string keeps backslashes and newlines as typed
    string path = @"C:\Projects\Demo\readme.txt";
    string multi = @"Line1
Line2";
    Console.WriteLine(path);
    Console.WriteLine(multi);
  }
}

StringBuilder

สำหรับการต่อสตริงหลายครั้ง ให้ใช้ StringBuilder เพื่อลดการจัดสรรหน่วยความจำและเพิ่มประสิทธิภาพ

using System;
using System.Text;

public class Program
{
  public static void Main(string[] args)
  {
    var sb = new StringBuilder();
    for (int i = 1; i <= 3; i = i + 1)
    {
      sb.Append("Item ").Append(i).Append(", ");
    }
    string result = sb.ToString();
    Console.WriteLine(result);
  }
}

การเปรียบเทียบและวัฒนธรรม; อักขระ

ใช้ StringComparison เพื่อควบคุมการเปรียบเทียบ เช่น OrdinalIgnoreCase โดย char คือหน่วยโค้ด UTF-16 และอีโมจิบางตัวต้องใช้คู่ตัวแทน ซึ่งอยู่นอกเหนือจากบทนำนี้

using System;
using System.Globalization;

public class Program
{
  public static void Main(string[] args)
  {
    string a = "file";
    string b = "FILE";

    // Case-insensitive, culture-invariant comparison
    bool same = string.Equals(a, b, StringComparison.OrdinalIgnoreCase);
    Console.WriteLine("Same (ord ignore case) = " + same);

    // Culture example: ToUpper with current culture
    string iDot = "i";
    string upper = iDot.ToUpper(CultureInfo.CurrentCulture);
    Console.WriteLine("Upper(i) in current culture = " + upper);

  }
}

ความหมายของความไม่เปลี่ยนแปลง

ตรวจสอบสั้น ๆ: การที่สตริงไม่เปลี่ยนแปลงใน C# หมายความว่าอย่างไร

ทบทวน

ทบทวน: สตริงไม่เปลี่ยนแปลง ให้ใช้การแทรกค่าและลำดับหลีก เลือกใช้ @ สำหรับเส้นทาง และใช้ StringBuilder เมื่อต้องต่อสตริงหลายครั้ง เปรียบเทียบด้วย StringComparison และจำไว้ว่า char คือหน่วย UTF-16

คำถามที่พบบ่อย

บทเรียน “สตริงและข้อความ: เปลี่ยนแปลงไม่ได้ การแทรกค่า verbatim, StringBuilder และการเปรียบเทียบ” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “สตริงและข้อความ: เปลี่ยนแปลงไม่ได้ การแทรกค่า verbatim, StringBuilder และการเปรียบเทียบ” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส C# Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส C# Academy มีบทเรียนทั้งหมด 3 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “สตริงและข้อความ: เปลี่ยนแปลงไม่ได้ การแทรกค่า verbatim, StringBuilder และการเปรียบเทียบ”

ทำความเข้าใจการเปลี่ยนแปลงไม่ได้ของสตริง ใช้การแทรกค่า สตริงแบบเอสเคปและ verbatim สร้างข้อความอย่างมีประสิทธิภาพด้วย StringBuilder เปรียบเทียบอย่างปลอดภัย และทบทวนพื้นฐาน char/Unicode คุณปฏิบัติ C# Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน C# Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน C# Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 1 จากทั้งหมด 3 บทเรียน

บทเรียน “สตริงและข้อความ: เปลี่ยนแปลงไม่ได้ การแทรกค่า verbatim, StringBuilder และการเปรียบเทียบ” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน C# Academy นี้ได้ไหม

ได้ บทเรียน C# Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. สตริงและข้อความ: เปลี่ยนแปลงไม่ได้ การแทรกค่า verbatim, StringBuilder และการเปรียบเทียบ
  2. StringBuilder การเปรียบเทียบ และข้อสังเกตเรื่องวัฒนธรรม
  3. char พื้นฐาน Unicode และการแยกวิเคราะห์/จัดรูปแบบอย่างง่าย
← กลับไปที่ C# Academy