c# - 我可以在 C# 数组中存储不同的类型吗?
问题描述
我想将多种数据类型存储在 C# 数组中。我对此进行了研究并找到了一个答案。例如:要使用对象类型,其代码如下
object[] array = new object[2];
有没有其他方法可以实现这一目标?
解决方案
这取决于您计划存储在数组中的数据类型。
要将不同的数据类型存储在同一个数组中,您必须使用它们的共同祖先——object
作为 .Net 框架中的最终基类,您可以在此数组中存储任何数据类型。
但是,如果您打算存储派生自更具体基类的类型 - 您可以使用该基类。
例如,如果您有一个Animal
派生类为Cat
、Dog
、的基类Tiger
,Snake
并且您想将它们全部存储在一个数组中,您可以使用一个数组Animal
来做到这一点。
请注意,这也适用于接口。如果您有多个类都实现相同的接口,则可以使用该接口的数组。例如:var myArray = new INotifyPropertyChanged[3];
在该数组中,您可以放置任何实现该接口的类。
推荐阅读
- tensorflow - 神经网络,为什么我们在进行批量梯度下降时沿轴 0 (np.sum(..., axis=0)) 求和偏差?
- r - 网格作为ggplot中的条形
- swift - Swift 暗模式背景渐变
- python - 无法创建文件 - 用于分类的 Resnet50 模型 api
- android - 在 EditText 中输入单词时删除下划线
- hortonworks-data-platform - Hortonwork Ambari 服务未启动
- php - 在 for 循环中生成页面后填充页面内容
- python - 以可读格式显示来自 psycopg2 的行
- mysql - 在哪里可以找到包含所有参数的 mysql 配置文件?
- java - 未触发验证检查的 Spring boot 2 rest api 客户注释