元组与类有何不同?代替下面的代码,我们可以创建一个包含 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/