Como um caractere pode ser acessado por índice, um loop variável pode ser usado para iterar todos os caracteres , que terá valores de índice possíveis. Por exemplo, um programa que exibe todos os códigos de caracteres da string s ficaria assim:
for (int i = 0; i < s.Length; i++)
{
Console.WriteLine(s[i]);
Console.WriteLine(Convert.ToInt32(s[i]));
}
Notas do programa:
1) s.Length
encontra o comprimento de uma string. O índice do primeiro caractere é 0 e o índice do último é s.Length-1
. A variável de loop i apenas assumirá valores sequencialmente de 0 a s.Length
-1
;
2) em cada linha, será exibido primeiro o próprio símbolo e depois seu código, que pode ser obtido através do método Convert.ToInt32()
;
A mesma enumeração pode ser escrita mais curta:
foreach (char c in s)
{
Console.WriteLine(c);
Console.WriteLine(Convert.ToInt32(c));
}
Neste trecho, o cabeçalho do loop percorre todos os s caracteres, colocando um a um na variável c.
A peculiaridade do C# ao trabalhar com strings é que strings são objetos imutáveis. Em outras palavras, não podemos alterar caracteres individuais de uma string.
Por exemplo, a seguinte instrução não funcionará:
s[5]=" ";