如何在字符串 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但它将"-"作为减去而不是减去这两个数字。我试图逃避它(不确定我是否正确逃离了它),但它没有帮助:/
使用
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
中的变量ready
是minus_Click
的局部变量,而不是你可能想要的全局变量。
而不是:
string ready = minusnumber + "-";
也许你的意思是:
ready = minusnumber + "-";
编辑
现在问题已经修补,似乎真正的问题是"为什么MessageBox.Show(ready);
显示"32-32"而不是 0? 如果这是问题所在,原因是您正在显示变量的值 ready
. 这是一个字符串。 您从 "32-"
开始,然后添加了"32"
. 此字符串串联的结果是 "32-32"
。 为了执行算术计算,您需要编写代码来解析字符串并执行计算。 或者找一个为包含算术表达式的字符串编写了Eval()
方法的人。
对于制造计算器,您必须使用波兰符号或 RPN