gpt4 book ai didi

C# 从函数返回二维数组索引

转载 作者:行者123 更新时间:2023-12-01 23:33:40 25 4
gpt4 key购买 nike

我有一个像这样返回二维数组索引的函数

public int[] getIndex()
{
return new int[2] { i, j };
}

我希望能够使用这个函数直接访问二维数组的值,例如

var val = array[getIndex()]

但是 getIndex() 会抛出一个错误。有没有其他方法可以返回二维数组的键?还是我必须手动指定

 var val = array[getIndex()[0], getIndex()[1]]

最佳答案

您可以使用 Array.GetValue() :

int element = (int)array.GetValue(getIndex());

请注意,这需要转换。我在此示例中使用了 int,但您需要为数组使用正确的类型。

如果你不喜欢强制转换,你可以写一个扩展方法:

public static class Array2DExt
{
public static T At<T>(this T[,] array, int[] index)
{
return (T) array.GetValue(index);
}
}

你会这样调用它:

var element = array.At(getIndex());

关于C# 从函数返回二维数组索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65916258/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com