所以我正在做一个小计算器作为练习。比我注意到我不知道如何告诉 C# 只选择输入的两个最高数字并忽略其余数字。有人可以帮我解决这个问题吗?
示例:
textBox1
输入9
textBox2
输入5
textBox3
输入7
我想得到两个最高的数字。
所以我正在做一个小计算器作为练习。比我注意到我不知道如何告诉 C# 只选择输入的两个最高数字并忽略其余数字。有人可以帮我解决这个问题吗?
示例:
textBox1
输入9
textBox2
输入5
textBox3
输入7
我想得到两个最高的数字。
不知道这对你有没有帮助...
private static int addHighestTwo(IEnumerable<int> source)
{
var sorted = new List<int>(source);
sorted.Sort();
return sorted[sorted.Count - 1] + sorted[sorted.Count - 2];
}
在您的情况下,获取int
Textboxes 中 Text 的值(提示:Int32.TryParse),然后像这样调用此方法addHighestTwo(new[] {valueFromTextBox1, valueFromTextBox2, valueFromTextBox3})
将数字放入列表中,如下所示(示例硬编码值):
List<int> MyList = new List<int> { 3, 4, 6, 7, 9, 3, 4, 5, 5 };
MyList = MyList.OrderByDescending(p => p).ToList();
然后获取列表中的前两个整数并将它们相加
int sum = MyList[0] + MyList[1];
只需确保添加验证,以便您在列表中至少有两个值。