这是我的测试代码,非常简单:
class Program
{
static void Main(string[] args)
{
int number = 0;
int newNumber = number++;
Console.WriteLine("the old number is {0},the new number is:{1}", number, newNumber);
Console.Read();
}
}
而输出结果是:"旧数字是1,新数字是:0",我认为它与我想要的结果相反。
使用后缀增量++
运算符,它首先返回原始值,然后递增。要获得您想要的内容,请使用前缀增量运算符,例如
int newNumber = ++number;
但是,如果您不想更改number
,请不要使用递增运算符,而是使用加法/减法。
这是因为number++
通过递增数字(PostFix(来更新数字的值。这是在使用表达式中使用原始值后完成的。要实现所需的行为,您可以使用:
int number = 0;
int newNumber = number + 1;
在这里,您使用了number++作为 Post 增量运算符。 它首先分配值,然后递增其值。 您可以通过两种方式实现所需的输出:
-
使用预增量运算符
int newNumber = ++number;
-
只需将 1 添加到数字变量,然后将其分配给 newNumber
int newNumber = 数字 + 1;