A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 李阳Leo 中级黑马   /  2012-9-22 20:02  /  2170 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 李阳_TickTock 于 2012-9-22 20:11 编辑

string和String有区别吗?如果有,请举例说明

评分

参与人数 1技术分 +1 收起 理由
郑文 + 1

查看全部评分

4 个回复

正序浏览
在C#中,string 是 System.String 的别名,所以基本上在使用时是没有差别的。


习惯上,我们把字符串当作对象时(有值的对象实体),我们用string。而我们把它当类时(需要字符串类中定义的方法),我们用String,比如:
string greet = String.Format("Hello {0}!", place);


其实乱用也可以,只是这样概念上清楚一点。


另外string是C#保留字,不可用作变量名,String就不是了。
如果深入详解,String是.net framework平台中通用类型(CTS)的数据类型,而
string是开发环境vs从String类型映射过来的数据类型,无论是他们之中的他一个,在编译后转换成的中间语言(IL)都将是一样的
回复 使用道具 举报
哦,原来区别有这么些个啊
回复 使用道具 举报
从位置讲
1.     String是.NET   Framework里面的String,小写的string是C#语言中的string
2.     如果把using System;删掉,没有大写的String了,System是.NET   Framework类库中的一个函数名.
从性质讲
1.     string是关键字,String是类,string不能作为类、结构、枚举、字段、变量、方法、属性的名称
2.     用C#编写代码的情况下尽量使用小写的string,比较符合规范,如果在追求效率的情况下可以使用大写的String,因为最终通过编译后,小写的string会变成大写的String,可以给编译减少负荷,从而运行效率提高。
3.     string 类型表示 Unicode 字符的字符串,string 是 .NET Framework 中的 String 的别名,对字符串相等性的测试更为直观
回复 使用道具 举报
String,跟Int32 ,Boolean 都属于.NET 中定义的类,而string,int,bool 相当于C#中对这些类定义的别名。

评分

参与人数 1技术分 +1 收起 理由
郑文 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马