c# - 元组与类有何不同?

标签 c# class tuples

元组与类有何不同?代替下面的代码,我们可以创建一个包含 3 个字段的类并从中创建对象。这个 Tuple 和那个有什么不同?考虑到您无法更改元组中的项目,它只是减少了我们编写的代码,还是也与速度有关。

Tuple<int, string, bool> tuple = new Tuple<int, string, bool>(1, "cat", true);

最佳答案

它使您不必定义具有自定义属性的新类。

确实通过三个项目的值来定义相等性,如果没有自定义编码,这是一个简单的类不会做的事情。加上它不可变的事实使其成为 Dictionary 中哈希键的合理候选者。 .

一个缺点是属性是普通的 Item1 , Item2等,因此它们不会为其中的值提供任何上下文,其中像 ID 这样的属性, Name , Age会的。

关于c# - 元组与类有何不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27557230/

相关文章:

c++防止通过getter更改引用

javascript - 从继承类访问父级 "this"变量

c# - WebAPI 在 IIS 中不返回 xml

c# - 列表中的多个参数。如何在没有类的情况下创建?

c# - 在c#中上传多个文件到FTP

list - Haskell 列表到元组

python - 类型错误 : "list indices must be integers" looping through tuples in python

python - 按元组分隔符拆分列表

c# - 使用 Graph SDK 在 Sharepoint Drive 的特定目录中创建文件夹

c# - 显示灰色的推送通知图标