我有
int[] source = new[]{ 1, 3, 8, 9, 4 };
为了用零替换源中低于某个阈值的所有值,我应该编写什么 linq 查询?
int threshold = 2;
int[] dest = source.Select(i => i < threshold ? 0 : i).ToArray();
如果您不想创建新数组但使用旧数组:
for(int index=0; index < source.Length; index++)
{
if(source[index] < threshold)
source[index] = 0;
}
如果您真的在(而不是)数组中进行替换,请不要使用 LINQ,只需
for(int i = 0; i < source.Length; i++)
if (source[i] < threshold)
source[i] = 0;