Console.ReadLine().ToString()生成错误

RKh*_*RKh 1 c#

我从来没有做过Console编程,所以陷入了这个愚蠢的事情:

Console.Write("Enter customer's salary: ");
string sal = Console.Write("{0}! ", Console.ReadLine().ToString());
Run Code Online (Sandbox Code Playgroud)

它会生成错误:无法将类型'void'隐式转换为'string'

Pao*_*sco 10

Console.Write是一个void方法,它不返回它写入控制台的内容.
你真正需要的是string.Format:

string sal = string.Format("{0}! ", Console.ReadLine());
Run Code Online (Sandbox Code Playgroud)

此外,最后的额外内容ToString()是多余的(如评论中所述),原因有两个:

  1. Console.ReadLine 已经返回一个字符串
  2. 字符串格式化函数接受对象作为参数,如果需要它们会自动转换为字符串