在C#编程时,有时碰到String,有时碰到string,可是感觉二者都可以,所以决定总结下二者的区别。
首先:
MSDN( Microsoft Developers Network )中对string的说明:string is an alias for String in the .NET Framework。即string是String的别名而已。
string是c#中的类,而String是Framework的类,C# string 映射为 Framework的 String。如果用string,编译器会把它编译成String,所以如果直接用String就可以让编译器少做一点点工作。
其次:
从性质上讲,string为基本类型,String为类
1.基本类型:在一门语言中,以语法的形式规定下来的.具有某种数据结构和相应特定操作的一个集合.一般会赋予其一个关键字.该关键字在珍整个编译环境中具有特殊含义.不能被自定义的类型使用。
2.类:只要符合面向对象语法规范的集合.满足封装继承多态三大特性.都能称之为类。
最后:
在使用时,如果使用c#,建议使用string,比较符合规范 string始终代表 System.String(1.x) 或 ::System.String(2.0) ,String只有在前面有using.System;的时候并且当前命名空间中没有名为String的类型(class、struct、delegate、enum)的时候才代表System.String string是关键字,String不是,也就是说string不能作为类、结构、枚举、字段、变量、方法、属性的名称,而String可以。