C# String Basics

In C#, strings are used to represent text or sequences of characters. The 'string' type is a built-in data type in C#, and it is part of the 'System' namespace. Strings in C# are immutable, which means once a string is created, its value cannot be changed. Here are some basics of working with strings in C#:

1. String Declaration and Initialization:
You can declare and initialize strings using double quotes ("") or by using the string keyword.


string message1 = "Hello, World!"; // Using double quotes
string message2 = "Welcome to C#";
string name = "John";

string greeting = string.Empty; // Initializing an empty string
string description = ""; // An empty string can also be represented using double quotes

2. Concatenating Strings:
To concatenate strings (combine them into a single string), you can use the '+' operator or the 'string.Concat' method.


string firstName = "John";
string lastName = "Doe";

string fullName = firstName + " " + lastName; // Using the + operator
string greeting = string.Concat("Hello, ", firstName, " ", lastName); // Using string.Concat

3. String Interpolation:
String interpolation allows you to embed expressions or variables within a string using the '$' symbol and curly braces '{}'.


string name = "Alice";
int age = 30;

string message = $"Hello, {name}! You are {age} years old.";

4. String Methods:
The 'string' class provides a variety of useful methods for manipulating and working with strings, such as:

  • 'Length': Gets the number of characters in the string.
  • 'ToLower' and 'ToUpper': Converts the string to lowercase or uppercase.
  • 'Substring': Extracts a portion of the string based on the start index and length.
  • 'IndexOf' and 'LastIndexOf': Searches for a character or substring and returns its index.
  • 'Replace': Replaces occurrences of a substring with another string.
  • 'Split': Splits the string into an array of substrings based on a delimiter.

Example:


string message = "Welcome to C# programming";
int length = message.Length; // length = 25

string lowercaseMessage = message.ToLower(); // "welcome to c# programming"
string uppercaseMessage = message.ToUpper(); // "WELCOME TO C# PROGRAMMING"

string substring = message.Substring(0, 7); // "Welcome"
int index = message.IndexOf("C#"); // index = 11

string replacedMessage = message.Replace("C#", "C Sharp"); // "Welcome to C Sharp programming"

string[] words = message.Split(' '); // words = ["Welcome", "to", "C#", "programming"]

5. Escaping Characters:
To include special characters like quotes or newlines within a string, you can use escape sequences.


string quote = "She said, \"Hello!\"";
string newLine = "Line 1\nLine 2";

In summary, strings are a fundamental data type in C# for representing text. They are immutable, and you can perform various operations on them using string methods and operators. String interpolation simplifies string formatting, and escape sequences allow you to include special characters within strings. Understanding the basics of working with strings is essential for any C# developer, as strings are widely used in C# applications.