为什么C#.Net允许字符串对象的声明不区分大小写?
String sHello = "Hello"; string sHello = "Hello";
单词String的小写和大写S都是可接受的,这似乎是允许这个的唯一对象.
有谁能解释为什么?
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.