使用索引数组访问数组
本文关键字:数组 访问 索引 | 更新日期: 2023-09-27 18:21:17
我想知道,是否可以使用数组而不是多个整数访问多维数组的特定元素。
例如:
int[,] map = sampleMap;
int[] position = { 1, 2 };
sampleObject = map[position]; // This line won't work. "cannot implicitly convert type 'int[]' to 'int'"
代替:
sampleObject = map[position[1], position[2]]
当然,当只使用2个维度时,这不会有多大问题,但想象一下我有很多维度,比如10:
map[position[1], position[2], position[3], ..., position[10]]
如果只写:,会更好、更优雅
map[position]
我一直在四处寻找,但我发现最好的是"如何在[此处插入编程语言]中访问数组"或"如何从[此处插入数组类型]中访问元素"之类的内容。
看看Array.GetValue(int[])方法
这里有一个想法:
假设您的数组包含20行和20列。
比方说,你想访问地图中的第26个元素(从地图的开头,从上到下,从左到右),
所以,你的坐标函数接受26作为一个参数,并且,
26 / 20 = 1
26 % 20 - 1 = 5
将map[26]
转换为map[1, 5]
,返回其值
不太确定这是否对你有帮助,只是一个想法!