C# 如何从主类中的int方法获取返回值
我是新来的。我想显示我的C# 如何从主类中的int方法获取返回值,c#,.net,console-application,C#,.net,Console Application,我是新来的。我想显示我的MyApp方法的返回值 public int MyApp(string strFirst, string strSecond) { if (strFirst.Equals(strSecond)) { return 0; } for (int i = 0; i < strFirst.Length; i++) { string
MyApp
方法的返回值
public int MyApp(string strFirst, string strSecond)
{
if (strFirst.Equals(strSecond))
{
return 0;
}
for (int i = 0; i < strFirst.Length; i++)
{
string temp = strFirst.Substring(0, strFirst.Length - 1);
temp = strFirst[strFirst.Length - 1] + temp;
strFirst = temp;
if (strFirst.Equals(strSecond))
{
return i + 1;
}
}
return -1;
}
public int MyApp(字符串strFirst,字符串strSecond)
{
if(strFirst.Equals(strSecond))
{
返回0;
}
for(int i=0;i
您可以使用以下功能:
class Program
{
static void Main(string[] args)
{
Calculate calc = new Calculate();
int result = calc.MyApp("try", "yrt");
Console.WriteLine(result);
}
}
如果不调用
Console.WriteLine()
,则不会向控制台打印任何内容。我们也要这样做: 我们通常用描述性动词来命名方法,所以你的
MyApp
应该变成Calculate
。
而类应该用名词命名,所以你的Calculate
应该变成MyApp
。
这样,您的代码更具表现力:
var app = new MyApp();
Console.WriteLine(app.Calculate("try", "yrt"));
问题在于:
calc.MyApp("try", "yrt");
您正在调用MyApp
方法,但未存储或使用结果
如果要将结果用于其他用途,则将结果存储在变量中非常有用:
//Store the result
var result = calc.MyApp("try", "yrt");
//Display the result
Console.Writeline(result);
您还可以将表达式(对方法MyApp
的调用)作为参数传递给Writeline
方法:
Console.Writeline(calc.MyApp("try", "yrt"));
运行时将执行对方法的调用,并将结果用作调用方法Writeline
的参数
两种方法都有效。如果您刚刚开始,我个人建议您使用变量。内联调用可以节省空间并提高性能,但它们也会使调试更加困难。如果使用
Console.WriteLine()
,并且它总是返回-1,而这不应该是MyApp()方法中的代码的问题所在
真正的问题是你正在旋转你的第一根弦,而不是把它转过来。
因此,如果您的第一个字符串是“hello”,第二个字符串是“olleh”-对于每个迭代,您将得到以下第一个字符串:
你永远不会得到“olleh”使用
Console.WriteLine
或Console.Write
。你为什么选择不使用Console.WriteLine?有具体的原因吗?没有具体的原因。我只想向用户显示我的返回值。一切都可以。@SerhatGüneş,您描述的问题可能与控制台无关。WriteLine()
-事实上,它反映了您从中返回的函数中的错误。在1个函数中使用多个返回不是一个好主意,相反,您可以创建一个int变量,并根据条件在函数中假设不同的值,然后只需返回单个int变量。Ps:这就是你需要的控制台
Console.Writeline(calc.MyApp("try", "yrt"));