NET问答: String 和 string 到底有什么区别?

咨询区

  • Peter O.

开门见山,参考如下例子:


string s = "Hello world!";
String s = "Hello world!";

请问这两者有什么区别,在实际使用上要注意一些什么?

回答区

  • Derek Park

string  是 C# 中 System.String 的别名,从技术角度上来说,他们没有任何区别,就好像 intSystem.Int32 一样。

至于使用上要注意什么?我通常推荐使用编译器内置的关键词 string,比如说:


string place = "world";

同样的,如果你想使用 string 下的某些方法,我推荐使用类方式 String.Format ,比如:


string greet = String.Format("Hello {0}!", place);

点评区

其实要想看两者的区别,可以先看看他们的 IL 是否一致?如果一致,那就看看汇编是否一致?沿着这个思路可以写个例子:

static void Main(string[] args){string s = "Hello world!";String s2 = "Hello world!";}

然后用 ILSpy 输出 IL 指令。


.method private hidebysig static void Main (string[] args) cil managed 
{// Method begins at RVA 0x2050// Code size 14 (0xe).maxstack 1.entrypoint.locals init ([0] string s,[1] string s2)IL_0000: nopIL_0001: ldstr "Hello world!"IL_0006: stloc.0IL_0007: ldstr "Hello world!"IL_000c: stloc.1IL_000d: ret
} // end of method Program::Main

从上面可以看出,都是用 ldstr 指令从元数据中提取新对象的引用,参考官方解释:

那怎么查看元数据中的 Hello world 字面量呢?可以用 PPEE 工具。

原文链接:https://stackoverflow.com/questions/7074/what-is-the-difference-between-string-and-string-in-c

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/301917.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LVS负载均衡-NET、DR模式配置

模型一:NAT模型的配置 实验环境: 采用VMware虚拟机,版本6.0.5 操作系统:Red Hat Enterprise Linux 5 (2.6.18) 虚拟机1:充当Director:网卡1(桥接):192.168.0.33(对外),网…

编程语言的“别样”编年史

全世界只有3.14 % 的人关注了数据与算法之美代码是一门语言,这门语言搭建了人与计算机沟通的桥梁。通过编写代码,人类可以“命令”计算机开发网页、开发软件、搭建游戏... ... 这门语言并不是上帝的发明,它是前辈们发挥聪明才智创造出来的&am…

也可以改为while(input[0])或while(cininput[0])

2019独角兽企业重金招聘Python工程师标准>>> <<c primer plus>> // static.cpp -- using a static local variable #include <iostream> // constants const int ArSize 10; // function prototype void strcount(const char * str); int main()…

.NET Core HttpClient请求异常分析

【导读】最近项目上每天间断性捕获到HttpClient请求异常&#xff0c;感觉有点奇怪&#xff0c;于是乎观察了两三天&#xff0c;通过日志以及对接方沟通确认等等&#xff0c;查看对应版本源码&#xff0c;尝试添加部分配置发布后&#xff0c;观察十几小时暂无异常情况出现&#…

python 小甲鱼 代码_Python小代码

先自我介绍一下&#xff0c;本人是正在自学Python的小白&#xff0c;没事分享一下自己写的小代码&#xff0c;欢迎在评论区补充。游戏管理系统&#xff1a;代码如下&#xff1a;def healthe(m):if m"Y"or y:print("欢迎&#xff0c;请进入游戏&#xff01;"…

原来这些行业的“潜规则”是这样的...

全世界只有3.14 % 的人关注了数据与算法之美在日常生活中&#xff0c;我们往往受限于专业和工作&#xff0c;对自己所处行业之外的事物了解不多。今天&#xff0c;数据汪带大家扒一扒各个行业中不为人知的“潜规则”&#xff0c;看看你们知道几个&#xff1f;看完上面20个“潜规…

“工业互联网平台“将成为工业制造企业的标配

目 录1. 概述2. 背景3. 评述1. 概述“‘工业互联网平台’将成为工业制造企业的标配”的命题既是基于工业生产企业现实情况的判断&#xff0c;又是对工业企业未来发展的需求判断。前途是光明的&#xff0c;但是道路是曲折的。前途的光明是基于工业企业现实…

预售┃每个人都应该学习编程,因为它会教你如何思考

▲数据汪特别推荐点击上图进入玩酷屋扎克伯格11岁开始学习编程&#xff0c;创办Facebook&#xff1b;比尔盖茨13岁学习编程&#xff0c;创办微软……乔布斯说&#xff1a;“每一个人都应该学习电脑编程&#xff0c;因为它会教你如何思考。"现在在北京上海&#xff0c;顶级…

python3抓取图片_通过Python3 爬虫抓取漫画图片

引言&#xff1a;最近闲来无事所以想着学习下python3&#xff0c;看了好长时间的文档&#xff0c;于是用python3写了一个漫画抓取的程序&#xff0c;好了 废话不多说上码&#xff01;第一步&#xff1a;准备环境 和类库&#xff0c;我用的是python3.5 禁用 python2.x &…

有个厉害的程序员女朋友是什么体验?

全世界只有3.14 % 的人关注了数据与算法之美自古妇女能顶半边天&#xff0c;在 IT 界&#xff0c;女生的力量也越来越强大&#xff0c;杰出的女性闪耀在我们身边。有人说&#xff1a;世界上有两种程序员一种是程序员一种是女程序员据数据汪了解&#xff0c;世界上第一个程序员 …

out参数不用赋值?这么神奇吗!

首先提醒大家一下&#xff0c;docs.microsoft.com上的《C# 指南》是这样描述out 参数修饰符[1]的&#xff1a;作为 out 参数传递的变量在方法调用中传递之前不必进行初始化。但是&#xff0c;被调用的方法需要在返回之前赋一个值。请注意上面加粗的话&#xff0c;然后看看下面的…

年底求职难?起薪28万的数据岗位,人才缺口达150万,不限专业学历……

全世界只有3.14 % 的人关注了数据与算法之美2018下半年开始&#xff0c;“寒冬”说愈演愈烈。事实上企业的结构调整、人才升级是常见的现象&#xff0c;而且并非所有互联网企业都在“缩招”&#xff0c;很多企业甚至计划在明年扩大校招。人工智能、数据技术的迅猛发展&#xff…

在.NET 6中使用DateOnly和TimeOnly

千呼万唤始出来在.NET 6(preview 4)中引入了两个期待已久的类型&#xff0c;将作为核心库的一部分。DateOnly和TimeOnly允许开发人员表示DateTime的日期或时间部分。这两个类型为值类型&#xff08;struct type&#xff09;&#xff0c;可以在代码中独立处理日期或时间概念时使…

预售┃要孩子逻辑清晰、善于思考,别忽视空间想象力的游戏锻炼!

▲数据汪特别推荐点击上图进入玩酷屋在之前的文章时&#xff0c;马斯提到数学存在一种现象叫“梯次掉队”&#xff0c;原因在于孩子的数学思维地基没有打牢。&#xff08;传送门&#xff09;提到初中孩子需要空间想象能力时&#xff0c;很多父母疑惑为何需要&#xff1f;关于这…

通过Dapr实现一个简单的基于.net的微服务电商系统(十六)——dapr+sentinel中间件实现服务保护...

dapr目前更新到了1.2版本&#xff0c;在之前4月份的时候来自阿里的开发工程师发起了一个dapr集成Alibaba Sentinel的提案&#xff0c;很快被社区加入到了1.2的里程碑中并且在1.2 release 相关升级文档里可以看到已经实现了对Alibaba Sentinel的支持。今天我们就讲讲我们如何通过…

预售┃让苹果CEO库克折服的程序员仅10岁!?

▲数据汪特别推荐点击上图进入玩酷屋在国外&#xff0c;编程教育课早已普及&#xff0c;美国、英国、新加坡等国家少儿编程已进入小学标准必修课程体系。韩国、日本也相继在2017年和2020年开展一年级至初三的编程教育普及。美国总统孙女&#xff0c;五岁开始学习在电脑上编程最…

java 字符串小写_Java字符串如何转换大小写?

程序开发中,经常需要对字符串进行转换操作,例如将字符串转换成数组的形式,将字符串中的字符进行大小写转换等。接下来通过一个案例来演示字符串的转换操作。 public class string03 {public static void main(String[] args) {String str="abcd"; System.out.prin…

入门机器学习,就这么简单!

AI这个词相信大家都非常熟悉&#xff0c;近几年来人工智能圈子格外热闹&#xff0c;光是AlphoGo就让大家对它刮目相看。今天小天就来跟大家唠一唠如何进军人工智能的第一步——机器学习。在机器学习领域&#xff0c;Python已经成为了主流。一方面因为这门语言简单易上手&#x…

java 生成jar_java如何生成jar

将*.class文件压缩成一个文件交付给用户使用&#xff0c;那么这样的文件就称为jar文件。如果要想生成jar文件&#xff0c;直接使用JDK中bin目录里的jar.exe就可以将所有的类文件进行压缩。此命令是随JDK一起安装的&#xff0c;直接在命令行中输入jar&#xff0c;即可看到此命令…

windows server 2012 dhcp 配置故障转移

在前面&#xff0c;青年怪客搭建的活动目录服务&#xff0c;在前面的内容中&#xff0c;我希望能在一个企业中&#xff0c;有一到两台域服务器可以管理我们企业内容中的计算机&#xff0c;但是一般的企业都是需要DHCP服务器的&#xff0c;为此我在前面的内容中&#xff0c;也配…