seqüência de caracteres (translation from VPE for Csharp Reference)

The string tipo representa uma sequência de zero ou mais caracteres Unicode. string é um alias para String no .NET estrutura.

Embora string é um tipo de referência, o (operadores de igualdade== e !=) são definidos para comparar os valores de string objetos, não as referências. Isso torna o teste de igualdade entre strings mais intuitivo.Por exemplo:

string a = "hello";
string b = "h";
// Append to contents of 'b'
b += "ello";
Console.WriteLine(a == b);
Console.WriteLine((object)a == (object)b);

Isso exibe "True" e, em seguida, "false" porque o conteúdo de cadeias de caracteres são equivalentes, masa e b não referência à mesma instância de seqüência de caracteres.

O + operador concatena seqüências:

string a = "good " + "morning";

Isso cria um objeto de sequência de caracteres que contém "good morning".

sistema autônomo seqüências de caracteres são imutável--o Sumário de um objeto de cadeia de caracteres não pode ser alterado depois que o objeto é criado, embora a sintaxe faz ele aparecer sistema autônomo se você pode fazer isso.Por exemplo, quando você escrever este código, o compilador realmente cria um novo objeto string para armazenar a nova sequência de caracteres, e a variável b continua a armazenar "h".

string b = "h";
b += "ello";

O operador [] pode ser usado para acesso somente leitura para caracteres individuais de um string:

string str = "test";
char x = str[2];  // x = 's';

Seqüência de caracteres literais são do tipo string e podem ser gravados duas formas entre aspas e @ cotado. Entre aspas seqüência de caracteres literais são colocados entre aspas duplas (""):

"good morning"  // a string literal

Literais de seqüências de caracteres podem conter qualquer caractere literal.Seqüências de escape estão incluídas:

string a = "\\\u0066\n";

Essa seqüência de caracteres contém uma barra invertida, a letra f e nova linha.

Observação:

O código de escape \udddd (onde dddd é um número de quatro dígitos) representa o caractere Unicode U +dddd. Códigos de escape do Unicode de oito dígitos também são reconhecidos: \udddd\udddd.

Literais de seqüência textual começam com e também são colocados entre aspas duplas.Por exemplo:

@"good morning"  // a string literal

A vantagem de seqüências de caracteres textual é que as seqüências de escape são não processados, que facilita a escrever, por exemplo, um nome de arquivo totalmente qualificado:

@"c:\Docs\Source\a.txt"  // rather than "c:\\Docs\\Source\\a.txt"

Para incluir um aspas duplas em uma sequência @-aspas, duplique-a:

@"""Ahoy!"" cried the captain." // "Ahoy!" cried the captain.

Outro uso do símbolo @ é usar referenciado (/Reference) identificadores que são palavras-chave translation from VPE for Csharp.

Para obter mais informações sobre seqüências de caracteres em translation from VPE for Csharp, consulte Sequências (guia de programação C#).

Exemplo

class SimpleStringTest 
{
   static void Main()
   {
      string a = "\u0068ello ";
      string b = "world";
      Console.WriteLine( a + b );
      Console.WriteLine( a + b == "Hello World" ); // == performs a case-sensitive comparison
   }
}
/* Output:
    hello world
    False
 */

Especificação da linguagem C#

Para obter mais informações, consulte as seções a seguir no Especificação da linguagem C#:

  • 2.4.2 Identificadores

  • 2.4.4.5 Literais de seqüências de caracteres

  • 4.2.3 O tipo de seqüência

  • 7.9.7 String operadores de igualdade

Consulte também

Conceitos

Guia de Programação C#

Guia de Programação C#

Referência

Palavras-chave C#

Tipos de referência (referência C#)

Tipos valor (referência C#)

Outros recursos

Referência C#

Formatação de tabela de resultados numéricos (translation from VPE for Csharp Reference)