如何在字符串 C# 中连接 -

本文关键字:连接 字符串 | 更新日期: 2023-09-27 18:37:01

我正在尝试用 C# 制作一个计算器,我希望将 - 连接成字符串或类似的东西。 预期输出也应减去两个变量。前任

string ready;
       private void minus_Click(object sender, EventArgs e)
    {
        long minusnumber = 32;
        ready = minusnumber +  "-";

    }
. 
.
.
private void equals_Click(object sender, EventArgs e)
    {
        long equalsNumber1 = 32;
        ready += equalsNumber1;
        MessageBox.Show(ready);
    }

控制台输出将为 0但它将"-"作为减去而不是减去这两个数字。我试图逃避它(不确定我是否正确逃离了它),但它没有帮助:/

如何在字符串 C# 中连接 -

使用

string.concat(minusnumber , "-");

它可能会对你有所帮助。您可以在 concat 方法上使用 n 个对象。

我认为这可能是您希望实现的目标,但有点不清楚。 这将取负数并否定它。 因此,当您将以前的数字添加到减号时,它实际上会减去。 唯一的问题是您的ready变量似乎是一个字符串。

private void minus_Click(object sender, EventArgs e)
{
    long minusnumber = 32;
    ready = -minusnumber;
}

也许ready应该很长。 当您获取用户输入时,您可以使用 TryParse:

string userText = "54";
long userInput;
Int64.TryParse(userText, out userInput);
ready -= userInput;

从你写的内容来看,minus_Click中的变量readyminus_Click的局部变量,而不是你可能想要的全局变量。

而不是:

string ready = minusnumber +  "-"; 

也许你的意思是:

ready = minusnumber +  "-"; 

编辑

现在问题已经修补,似乎真正的问题是"为什么MessageBox.Show(ready);显示"32-32"而不是 0? 如果这是问题所在,原因是您正在显示变量的值 ready . 这是一个字符串。 您从 "32-" 开始,然后添加了"32" . 此字符串串联的结果是 "32-32" 。 为了执行算术计算,您需要编写代码来解析字符串并执行计算。 或者找一个为包含算术表达式的字符串编写了Eval()方法的人。

对于制造计算器,您必须使用波兰符号或 RPN