O tipo de dado string é uma cadeia de caracteres justapostos. Abaixo uma abstração da
representação de uma string em um local de memória. Em C# utilizamos a palavra
reservarda String ou string para declarar uma variável desse tipo.
0 |
1 |
2 |
3 |
4 |
5 |
's' |
't' |
'r' |
'i' |
'n' |
'g' |
Para a declaração de um string em C#, utilizamos a sintaxe A abaixo que apresenta também
a atribuição.
Sintaxe A
string nome_variavel; //null
string nome_variavel = "uma string CSharp";
string nome_variavel = new String("string");
string nome_variavel = { 'char1', 'char2', 'charN', ... };
string nome_variavel = new String('char', quantidade); //elementos repetidos
string nome_variavel = new("string"); //Nome classe omitido
Onde
-
Exemplo 1
using System;
public class HelloWorld
{
public static void Main(string[] args)
{
string str1; //null
string str2 = "C#";
char[] str3 = {'u','m','a',' ','s','t','r','i','n','g'};
string str4 = ""; //vazia
string str5 = String.Empty; //vazia. Boa prática
}
}
Saída
-
Em C#, uma string é imutável. Sendo assim, não podemos alterar seu conteúdo utilizando
o indexador [] como pode ser visto no exemplo abaixo:
Exemplo 2
using System;
public class Program
{
public static void Main()
{
string str = "string";
Console.Write(str[0]);
str[0] = 'S';
Console.Write(str[1]);
}
}
Saída
Compilation error (line 9, col 3): Property or indexer 'string.this[int]' cannot be assigned to -- it is read only.