C#.Net строка без учета регистра

Почему C#.Net позволяет объявить строковый объект без учета регистра?

String sHello = "Hello";
string sHello = "Hello";

Как строчные, так и прописные буквы S в строке String являются приемлемыми, и это, кажется, единственный объект, который позволяет это.

Кто-нибудь может объяснить почему?

7 ответов

Решение

string является ключевым словом языка в то время как System.String это тип псевдонимов.

Оба компилируются в одно и то же, аналогично:

  • int является System.Int32
  • long является System.Int64
  • float является System.Single
  • double является System.Double
  • char является System.Char
  • byte является System.Byte
  • short является System.Int16
  • ushort является System.UInt16
  • uint является System.UInt32
  • ulong является System.UInt64

Я думаю, что в большинстве случаев речь идет о разборчивости кода - все основные типы системных значений имеют псевдонимы, я думаю, строчные string может быть просто для последовательности.

В дополнение к другим ответам рекомендуется использовать ключевые слова, если они существуют.

Например, вы должны использовать строку, а не System.String.

"Строка" - это название класса. "строка" - это ключевое слово, которое отображает этот класс.

это так же, как

  • Int32 => int
  • Десятичный => десятичный
  • Int64 => длинный

... и так далее...

"строка" является ключевым словом C#. это просто псевдоним для System.String - одного из классов.NET BCL.

"string" - это просто псевдоним C# для класса "String" в пространстве имен System.

Строка является псевдонимом для System.String. Это одно и то же.

По соглашению, однако, объекты типа (System.String) обычно называются псевдонимами - например,

string myString = "Hello";

в то время как операции над классом используют заглавную версию, например

String.IsNullOrEmpty(myStringVariable);

Я использую String, а не string, Int32 вместо int, так что моя подсветка синтаксиса обнаруживает строку как тип, а не как ключевое слово. Я хочу, чтобы ключевые слова выскакивали у меня.

Другие вопросы по тегам