Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/281.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 为什么要使用占位符?_C#_Methods_Placeholder - Fatal编程技术网

C# 为什么要使用占位符?

C# 为什么要使用占位符?,c#,methods,placeholder,C#,Methods,Placeholder,我有一个我在c#工作的小项目。我对c#还相当陌生,想知道为什么我应该使用占位符{0}而不是a+。有什么不同吗?使用一个比另一个有什么好处 这里有一个例子- public void DisplayMessage() { Console.WriteLine("Student Name:"+ Name); // Why not this Console.WriteLine("Studnt Age: {0}", Age);// instead of this? } 谢谢格式化

我有一个我在c#工作的小项目。我对c#还相当陌生,想知道为什么我应该使用占位符{0}而不是a+。有什么不同吗?使用一个比另一个有什么好处

这里有一个例子-

 public void DisplayMessage()
  {
    Console.WriteLine("Student Name:"+ Name); // Why not this
    Console.WriteLine("Studnt Age: {0}", Age);// instead of this?
  }

谢谢

格式化字符串比添加字符串更清晰,尤其是当您有两个以上的参数时

static readonly string UrlFormat = "{0}://{1}/{2}?{3}";  //the format can be reused
var url = string.Format(UrlFormat, scheme, host, path, query);
var anotherUrl = string.Format(UrlFormat, scheme2, host2, path2, query2);
var bad = scheme3 + "://" + host3 + "/" + path3 + "?" + query3;  
顺便说一下,在C#6中,格式可以更美观:

var urlUsingNewFeature = $"{scheme}://{host}/{path}?{query}";
您可以看到它们之间的维护成本

性能添加字符串的唯一优点是,当添加两个字符串时,它比字符串格式更快

"Student Name: " + name
比以前快一点

string.Format("Student Name: {0}", name)

我以前做过基准测试,添加格式化字符串比添加字符串更清晰,尤其是当您有两个以上的参数时

static readonly string UrlFormat = "{0}://{1}/{2}?{3}";  //the format can be reused
var url = string.Format(UrlFormat, scheme, host, path, query);
var anotherUrl = string.Format(UrlFormat, scheme2, host2, path2, query2);
var bad = scheme3 + "://" + host3 + "/" + path3 + "?" + query3;  
顺便说一下,在C#6中,格式可以更美观:

var urlUsingNewFeature = $"{scheme}://{host}/{path}?{query}";
您可以看到它们之间的维护成本

性能添加字符串的唯一优点是,当添加两个字符串时,它比字符串格式更快

"Student Name: " + name
比以前快一点

string.Format("Student Name: {0}", name)

我以前做过基准测试,补充说我看到你不是在尝试微优化,只是好奇而已。在C#6中,您还可以添加
Console.WriteLine($“学生年龄:{Age}”)复杂格式、多个字段和调整的可能重复使用字符串更容易format@displayName好吧,我从中得到的是,这真的不重要吗?我知道你不是在尝试微优化,只是好奇而已。在C#6中,您还可以添加
Console.WriteLine($“学生年龄:{Age}”)复杂格式、多个字段和调整的可能重复使用字符串更容易format@displayName好的,所以我从中得到的是,这真的不重要吗?是的,最终用户无论如何都不会注意到区别。@user3793369但是作为后端开发人员,我们应该关心那些用户看不到的东西。代码风格和重复使用非常重要。@user3793369也许是,但你还是坚持最好的practices@user3793369作为一名开发人员,在一次糟糕的部署和大量的紧急会议和分类之后,在晚上10点盯着那行代码。我可以告诉你,区别在于白天和黑夜。这要么是晚上下班,要么是白天下班。是的,最终用户无论如何都不会注意到区别。@user3793369但作为后端开发人员,我们应该关心那些用户看不到的东西。代码风格和重复使用非常重要。@user3793369也许是,但你还是坚持最好的practices@user3793369作为一名开发人员,在一次糟糕的部署和大量的紧急会议和分类之后,在晚上10点盯着那行代码。我可以告诉你,区别在于白天和黑夜。要么在晚上下班,要么在白天下班。