在数组之间传输数据并缺少一些值
本文关键字:数组 之间 传输 数据 | 更新日期: 2024-09-24 09:02:01
>我有一个大小为 200 的维String
数组,偶数索引单元格 (0,2,4,6,...( 由 Int
填充,奇数索引单元格 (1,3,5,7,...( 由 Float
填充。为了向这个数组添加一些值,我想将此数组传输到大小为 [100,2] 的二维String
数组,第一行由Int
填充,第二行由浮点数填充。
问题是在数组之间的传输过程中,我随机错过了一些值(我得到 Null 代替(。我已经检查了数据以确保我的数据格式正确。
int shomar = 0;
for (int y = 0; y < MITNeighborSource.Length; y +=2)
{
for (int x = 0; x < Cal.GetLength(0); x++)
{
if (MITNeighborSource[y] == Cal[x, 0])
{
MITNeighborSourceEdge[0, shomar] = MITNeighborSource[y]; //course ID
MITNeighborSourceEdge[1, shomar] = Cal[x, 2]; //output degree
MITNeighborSourceEdge[2, shomar] = Cal[x, 3]; //Input degree
MITNeighborSourceEdge[3, shomar] = MITNeighborSource[y+1]; //The cosine similarity
break;
}
if (MITNeighborSource[y] == Cal[x, 1])
{
MITNeighborSourceEdge[0, shomar] = MITNeighborSource[y]; //course ID
MITNeighborSourceEdge[1, shomar] = Cal[x, 4]; //output degree
MITNeighborSourceEdge[2, shomar] = Cal[x, 5]; //Input degree
MITNeighborSourceEdge[3, shomar] = MITNeighborSource[y+1]; //The cosine similarity
break;
}
}
shomar++;
}
可能是什么问题?
如果您只想根据项目索引将一维数组分成二维数组,则可以像下面这样操作。假设strArray是你的一维数组:
string[] oneDArray = new[] {"200", "2.1", "40", "56.3", "34"};
var list = oneDArray .ToList();
var twoDArray = list.GroupBy(x => list.IndexOf(x)%2).Select(x=>x.ToArray()).ToArray();
在这里,twoDArray 将有两个数组,其中包含来自 oneDArray 的偶数和奇数索引元素。