作业帮 > 综合 > 作业

将一段表达式中的数字加入c#数组

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/11/06 00:45:40
将一段表达式中的数字加入c#数组
有一段四则表达式 1+2*3-4
把1 2 3 4 加如数字数组
把 + * - 加入符号数组
可以循环读取每个字符,然后判断字符是否为运算符,如果不是则把字符连接为字符串,如果是则把连接的字符串存入数组,把运算符存入另一个数组.
private List NumberList = new List();
private List OperatorList = new List();
private void Check(string exp)
{
string numTmp = "";
for (int i = 0; i < exp.Length; i++)
{
string strtmp = exp.Substring(i, 1);
if (strtmp == "+" || strtmp == "-" || strtmp == "*" || strtmp == "/")
{
OperatorList.Add(strtmp);
if (!string.IsNullOrEmpty(numTmp))
{
NumberList.Add((double)numTmp);
numTmp = "";
}
}
else
numTmp += strtmp;
}
}
最后用NumberList.ToArray()和OperatorList.ToArray()就可以转换为数组了.
再问: numTmp是string 在下面NumberList.Add((double)numTmp); 怎么成double了。 好像不能转换啊。 那我把numTmp改成double呢。。。。