如何从1c#方法返回2个值

本文关键字:返回 2个值 方法 1c# | 更新日期: 2023-09-27 18:15:36

可能重复:
如何从C#中的一个函数返回多个值?

C#方法总是这样:

public <return type> funName()
{
//do sth
return someValueformatedasReturnType;
}

如何从1c#方法返回2个值?据你所知,这是一个面试问题。谢谢

如何从1c#方法返回2个值

从最好到最坏(IMHO(:

  • 为返回类型创建一个新类
  • 使用Tuple
  • 用完参数

您有几个选项:

  1. 输出参数
  2. Tuple
  3. 具有2个属性的类

您可以为函数参数使用ref或out关键字。

int i;
int j;
dosomething(out i, out j);    
public void dosomething(out int a, out int b)
{
   a = 1;
   b = 2;
}

调用函数后,i=1,j=2。与ref关键字相同,msdn告诉区别:(

或者返回元组。

@tudor

查看您的名称,使用out作为对象名称:S,out用于通过引用传递值!

定义一个具有两个输出的新数据类型(class(:

public class Output
{
    public object Val1 { get; set; }
    public object Val2 { get; set; }
}

并返回类型为Output的新对象:

public Output FunName()
{
     Output out = new Output;
     out.Val1 = val1;
     out.Val2 = val2;
     return out;
}