c#如何将Console.WriteLine分配给变量

MTo*_*MTo 3 c#

我想缩短键入Console.WriteLine并将其分配给var,例如:var write = Console.WriteLine(); 并执行它就像写("我的名字是......"); >>>输出>>我的名字是......

Ser*_*rvy 9

通过使用委托来完成为变量分配方法:

Action<string> write = Console.WriteLine;
write("Hello World!");
Run Code Online (Sandbox Code Playgroud)

当然,代表将无法代表每一个重载Console.WriteLine(并且它有18个).它只能代表其中一个重载(但它可以代表其中的任何一个).


das*_*ght 5

虽然只是简单地缩短你的代码是一个值得怀疑的想法,但这是你可以做的:定义Write方法的委托,就像这样

delegate void WriteDelegate(string msg, params object[] args);
Run Code Online (Sandbox Code Playgroud)

定义类型的变量WriteDelegate,并为其分配Console.Write:

private static readonly WriteDelegate w = Console.Write;
Run Code Online (Sandbox Code Playgroud)

现在您可以使用或不使用参数w来调用Console.Write:

w("Hello");
w(", {0}", "world!");
Run Code Online (Sandbox Code Playgroud)

演示.