是否可以从一个方法本机返回多个值?

推荐答案

你说natively是什么意思?

C#7有一个新特性,通过tuple typestuple literals,可以从一个方法返回多个值.

以以下函数为例:

(string, string, string) MyCoolFunction() // tuple return type
{   
    //...        
    return (firstValue, secondValue, thirdValue);
}

可以这样使用:

var values = MyCoolFunction();
var firstValue = values.Item1;
var secondValue = values.Item2;
var thirdValue = values.Item3;

或使用deconstruction syntax

(string first, string second, string third) = MyCoolFunction();

//...

var (first, second, third) = MyCoolFunction(); //Implicitly Typed Variables

花点时间看看这Documentation个,他们有一些非常好的例子(这个答案就是基于他们的!)

.net相关问答推荐

EF核心类似功能T-SQL UPDATE FROM

使用 SSH.NET 查找具有特定文件名的最新 SFTP 文件

在接口内部声明 IEnumerable 而在具体类中声明 IList

在 C# 中获取 log4net 日志(log)文件

ASP.NET MVC:隐藏字段值不会使用 HtmlHelper.Hidden 呈现

在 C# DllImport 中使用 32 位或 64 位 dll

DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss") 返回上午时间而不是下午时间?

找不到 Assert.Fail 和 Assert.Pass 或等效项

如何使用 Entity Framework Code First CTP 5 存储图像?

将两个列表映射到 C# 中的字典中

使 HashSet 不区分大小写

说明 C# 中 volatile 关键字的用法

IEnumerable vs IReadonlyCollection vs ReadonlyCollection 用于公开列表成员

判断对象列表是否包含具有特定值的属性

如何比较泛型类型的值?

使用 C# 将时间跨度值转换为格式hh:mm Am/Pm

实体框架太慢了.我有哪些 Select ?

在 .NET 中乘以时间跨度

Roslyn 编译代码失败

如何从 webclient 获取状态码?