字符串值中的逻辑操作,包括符号



我正在尝试合并基于字符串变量中存储的值的条件操作。 例如,在我拥有的一组值中,我正在尝试实现它,以便在string value = ">=2.5";时,它将首先检查对应于 2.5 的值是否可用,因为这是最小值,如果这是真的,它将检查哪些其他值大于 2.5 并从值列表中获得最大值的结果。

这是我到目前为止尝试过的,我目前正在坚持实现逻辑以从数字集中获得最大价值

static List<double> values = new List<double>();
static void Main(string[] args)
{
values.Add(1.0);
values.Add(2.0);
values.Add(2.2);
values.Add(2.5);
values.Add(5.0);
values.Add(5.5);
string value = ">=2.5";
if (value.Contains(">="))
{
value = value.Replace(">=", "").Trim();

if (values.Contains(Convert.ToDouble(value)))
{
//Logic should be incorporated
}

}

}

在这种情况下,我希望最大值为 5.5。

将不胜感激对此的任何帮助

您有两种选择:专业解决方案和学生解决方案。

稳定解决方案:

values.Add(1.0);
values.Add(2.0);
values.Add(2.2);
values.Add(2.5);
values.Add(5.0);
values.Add(5.5);
string value = ">=2.5";
if (value.Contains(">="))
{
var valueDouble = Convert.ToDouble(value.Replace(">=", "").Trim());//IMPORT THECONVERSION TO DOUBLE!
double greatestVersion = 0;
foreach (var item in values)
{
if (item >= valueDouble)
greatestVersion = item;
}
Console.WriteLine($"The greatest version is " + greatestVersion);
}

专业解决方案:

var greatestVersion = values.Max(x => x >= Convert.ToDouble(value.Replace(">=", "").Trim()));

相关内容

最新更新