gpt4 book ai didi

c# - 从字符串中添加整数

转载 作者:太空宇宙 更新时间:2023-11-03 21:29:46 24 4
gpt4 key购买 nike

我有一个像 str = "4+ 6 * 30"这样的字符串;我必须使用 c# 对此进行算术运算。我对这个问题的解决方案是:

string temp = " 4 + 6 * 5";
int firstNaum = 0;
int secondNum = 0;
int ThirdNum = 0;
int finalResults = 0;

//Spliting strings
string[] withoutOperator = temp.Split('\t',' ','*' , '+');

//Iterating strings
int counter = 0;
foreach (var res in withoutOperator)
{
if (!string.IsNullOrEmpty(res) && counter ==1)
{
firstNaum = Convert.ToInt32(res);
}
if (!string.IsNullOrEmpty(res) && counter== 4)
{
secondNum = Convert.ToInt32(res);
}
if (!string.IsNullOrEmpty(res) && counter == 7)
{
ThirdNum = Convert.ToInt32(res);
}
counter += 1;
}
finalResults = firstNaum + secondNum * ThirdNum;

有更好的方法吗?

最佳答案

您可以像这样非常简单地(有点 hackish...)做到这一点:

string expression = "4 + 6 * 5";

DataTable dt = new DataTable();
var result = dt.Compute(expression, "");

Console.WriteLine(result);//34

这也像这样正确处理操作顺序:

string expression = "(4 + 6) * 5";

DataTable dt = new DataTable();
var result = dt.Compute(expression, "");

Console.WriteLine(result);//50

关于c# - 从字符串中添加整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24937026/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com