c#根据项目的第一个字符在列表框中添加/减去/乘/除不同的项目

本文关键字:项目 添加 减去 列表 第一个 字符 | 更新日期: 2023-09-27 17:53:47

目前我有一个程序,它将项目添加到列表框中,这些项目由字符(+,-,*,/)后面跟着数字组成。我一直试图让我的程序识别列表框中项目的第一个字符,并适当地做了一整天的数学,但我似乎无法得到它的权利。我甚至不知道我应该用什么代码。

为了更清楚一点

条目以这种格式"+34233"输入到名为txtCalculation的文本框中,然后将该值添加到列表框lstDisplay中,因此在5个条目之后,它应该是这样的。

+2
+4
/2
-1
+5
*3
total = 21

我想找到一种方法使程序遍历列表并进行数学运算,然后将其作为最后一项添加到列表中,如上所示。我已经有了将数字添加到列表的代码,但如果有人能抽出时间向我解释一下我将如何去做这样的事情,我将非常感激。

将项目添加到列表框的代码:

if (txtCalculation.Text.Length > 1)
        {
            string Number = txtCalculation.Text;
            if (e.KeyChar == (char)Keys.Enter)
            {
                try
                {
                    lstDisplay.Items.Add(Number);
                    txtCalculation.Text = "";
                }
                catch (Exception ex)
                {
                    MessageBox.Show("Error");
                }
            }
        }

c#根据项目的第一个字符在列表框中添加/减去/乘/除不同的项目

在try块中像

switch (line[0])
{
    case '+':
        num += Convert.ToInt32(line.Substring(1));
        break;
    case '-':
        num -= Convert.ToInt32(line.Substring(1));
        break;
}

,其中line是当前行,num是运行总数。子字符串将通过包含行中除了第一个字符之外的所有内容来创建一个新字符串。1表示从第二个字符开始,因为字符串的索引是0 (c#中的大多数东西都是0)。