bub*_*pop 3 c# arrays int tuples
我正在使用的数组是int[,,],我想在一个方法中创建每个(我假设是)元组的第一个值,然后我想多次修改后两个值.(另一种方法)
例如:
int[,,] MyArrayGet()
{
int [,,] myArray;
int [,,] myArray = new int[9,9,9];
for (int i = 0; i < 10; i++)
{
myArray[i] = [SomeInt,0,0];
}
return myArray;
}
int[,,] MyArrayModify(int[,,] myArray)
{
for (int i = 0; i < 10; i++)
{
if (somthing is true)
{
myArray[i] = [dont change this value,n+1,dont change this value]
}
if (somthingelse is true)
{
my Array[i] = [dont change this value,dont change this value,n+1]
}
}
Run Code Online (Sandbox Code Playgroud)
有没有快速简便的方法来做到这一点?
我已经检查了这个问题如何从List <Tuple <int,int,string >>获取字符串数组?但要么我觉得它没有回答我的问题.
元组的设计是不可改变的.只需在修改时创建新的.
IEnumerable<Tuple<int, int, int>> Get()
{
for (int i = 0; i < 10; i++)
{
yield return Tuple.Create(i, 0, 0);
}
}
IEnumerable<Tuple<int, int, int>> Modify(IEnumerable<Tuple<int, int, int>> tuples)
{
foreach (var tuple in tuples)
{
if (tuple.Item1 < 5)
{
yield return Tuple.Create(tuple.Item1, tuple.Item2 + 1, tuple.Item3);
}
else
{
yield return Tuple.Create(tuple.Item1, tuple.Item2, tuple.Item3 + 1);
}
}
}
Run Code Online (Sandbox Code Playgroud)
您的代码看起来比J#更多.int[,,]是3D数组不是3项的数组.
Tuple<int, int, int>[]是Tuple3个项目的数组.如果您不是初学者并使用LINQ,IEnumerable<Tuple<int, int, int>>则是更好的版本.
| 归档时间: |
|
| 查看次数: |
8937 次 |
| 最近记录: |