c#如何检查一个对象是否是多维数组
本文关键字:是否是 一个对象 数组 检查 何检查 | 更新日期: 2023-09-27 18:11:58
我是c#的新手。我有一个对象在c#,如何检查如果它是一个单一或多维数组?
int[,] array = new int[2,3];
object obj = (object) array;
if(obj is Array)
{
if(obj.Rank==2) // I need to cast obj to array first in order to call Rank
{
//do something
}
}
有两种主要方法可以实现此目的。按照您的建议将obj
转换为Array
:
if(obj is Array && ((Array)obj).Rank == 2)
{
//do something
}
或者使用as
运算符:
var arr = obj as Array;
if(arr != null && arr.Rank == 2)
{
//do something
}
注意,在这两个解决方案中,为了简单起见,我使用条件与操作符(&&
)将两个if
组合在一起。只有当左边的值为true
时,才会计算右边的值