:
List<int> list = new List<int> { 2, 5, 7, 10 };
int number = 9;
int closest = list.Aggregate((x,y) => Math.Abs(x-number) < Math.Abs(y-number) ? x : y);
:
List<int> list = new List<int> { 2, 5, 7, 10 };
int number = 9;
int closest = list.Aggregate((x,y) =>
{
if(Math.Abs(x-number) < Math.Abs(y-number))
{
return x;
}
else
{
return y;
}
});
What you use is called a conditional statement, which is an abbreviation for the if-else statement, where the return result is selected as follows: {true / false condition}? {value if true}: {value if false}
source
share