C# 如何在c中正确使用函数返回#
我想从函数中返回一个变量 我的需要是我想拆分一个句子,检查一个特定的关键字是否存在。如果存在,它应该返回buy else sellC# 如何在c中正确使用函数返回#,c#,.net,return,return-value,C#,.net,Return,Return Value,我想从函数中返回一个变量 我的需要是我想拆分一个句子,检查一个特定的关键字是否存在。如果存在,它应该返回buy else sell private string FindDirection(string Order) { string direction; string[] splitText = Order.Split(' '); foreach (string s in splitText) {
private string FindDirection(string Order)
{
string direction;
string[] splitText = Order.Split(' ');
foreach (string s in splitText)
{
if (Convert.Contains(s))
{
direction = "B";
}
else
{
direction = "S";
}
return direction;
}
return null;
}
我想从函数返回方向。若我并没有将return设置为null,那个么它将显示错误。如果我将返回方向而不是返回null,则会显示“
未赋值变量的使用“
我是新来的,如果您对我的代码和样式有任何建议,请告诉我。在您的代码示例中,您总是很早从循环返回,只循环splitText中的第一个字符串 将return放在函数的末尾,允许循环遍历其所有元素
private string FindDirection(string singleOrder)
{
string direction = "SELL";
string[] splitText = singleOrder.Split(' ');
foreach (string s in splitText)
{
if (strConvert.Contains(s))
{
direction = "BUY";
break;
}
}
return direction;
}
对于“买”和“卖”,最好使用枚举而不是字符串
考虑以下情况:输入一个空字符串,循环甚至不会执行一次。那么
direction
的值是多少?此函数可能不符合您的要求。问题是,你从来没有告诉我们你想要它做什么。请用通俗易懂的英语告诉我们您希望这个函数做什么,并给我们一些示例值(输入、预期输出)。@john编译器不知道在运行时会发生什么。您声明了“null”或字符串。空的可能是一个输入值,表示它是字符串
,因此编译器必须弄清楚如果它是其中之一应该发生什么。再次声明:我现在只能看到您的代码做了什么,我确信它不是您想要的。既然您还没有告诉我们您希望代码做什么,最好是使用示例输入和输出,我们真的无法为您做任何事情。@HansKesting谢谢。我添加了以下行if(string.IsNullOrEmpty(singleOrder)){//code here}x。看起来可能有用