每隔一个数组元素乘以2
本文关键字:数组元素 一个 | 更新日期: 2023-09-27 18:00:45
我有一个由10位数字组成的数组。我想乘以2,数组中的每个元素都有一个偶数索引。索引为奇数的元素我想乘以1(实际上,保持不变)。因此,数组[0]*2、数组[1]*1、数组[2]*2等
我尝试在每个元素的索引号上使用模运算符,但我认为这不是我的代码实际所做的。我之前的愚蠢尝试如下:
for (int i = 0; i < 10; i++)
{
if ((Array.IndexOf(myArray, i) % 2) == 0)
{
// multiply myArray[i] by 2
}
else // multiply myArray[i] by 1
}
此代码适用于列表中任何数量的元素。(数组可以有一个或多个元素)
myArray = myArray.Select(x => ((Array.IndexOf(myArray, x) % 2 == 0) ? x * 2 : x * 1)).ToArray();
会给你一个整数数组,偶数索引元素乘以2,奇数元素乘以1。
for (int i = 0; i < 10; i++)
{
if((i % 2) == 0)
{
// multiply myArray[i] by 2
}
else // multiply myArray[i] by 1
}
Array.IndexOf(firstParam,secondParam)
将为您提供secondParam的索引。例如:
- arr[0]=10
- arr[1]=3
- arr[2]=5
- arr[3]=1
Array.IndexOf(arr,1)
=3、Array.IndexOf(arr,3)
=1等