我在C#中使用了一个字符串,我在Visual Studio 2008中使用C#。我想将其转换为大写。
string lowerString = txtCheck.Text;
string upperString = lowerString.ToUpper();
通常这是我应该使用的方式,但事情是我没有得到任何错误,当我像这样使用它
string upperString = lowerString.ToUpper().Tostring();
现在我很困惑 ToUpper()也是一个函数,那我怎么能用第二种语法再次使用 ToUpper()。Tostring(); 。我的意思是它意味着 Function1()。Function2()。
答案 0 :(得分:9)
不,您正在ToString
返回的对象上调用ToUpper
。这没有意义,但这不是编译错误。如果你这样做了:
lowerString.ToUpper.ToString();
这确实会给你一个错误,因为你不能在方法组上调用方法(ToString)。
答案 1 :(得分:5)
ToUpper()是一个接受字符串并返回另一个字符串的函数,所以你可以这样做:
string upperString = txtCheck.Text.ToUpper();
根本不需要调用ToString()。
答案 2 :(得分:3)
将其视为:
string upperString = (lowerString.ToUpper()).Tostring();
换句话说,从lowerString.ToUpper()
返回的内容正在应用Tostring()
。
与等效的其他语言没有区别:
upperString = toString (toUpper (lowerString));
事实上,你可以做各种奇怪的事情,如:
string upper = lower.ToUpper().ToLower().ToUpper().ToString().ToString();
虽然怪物永远不会超过代码审查: - )