C#-i++与++i的区别

本文详细解释了i++和++i在C#中的区别,包括它们的执行顺序和在表达式中的不同效果。例如,i++先赋值后自增,而++i先自增后赋值。在for循环中,两者的运行效率差异微小,但在特定情况下可能影响结果。文章提供了多个示例来帮助理解这一概念。
摘要由CSDN通过智能技术生成

i++:先赋值后自增,先使用i的当前值,然后再将i加1。

++i:先自增后赋值,先将i加1,然后再使用i的新值。

一、示例题目

示例1

int i = 0;
i = i++; 
System.out.println("i = " + i); 

示例2

int a = 2; 
int b = (3 * a++) + a;
System.out.println(b);

示例3

int a = 2; 
int b = a + (3 * a++);
System.out.println(b);

示例4

int i = 1;
int j = 1;
int k = i++ + ++i + ++j + j++; 
System.out.println(k);

示例5

int a = 0;
int b = 0;
a = a++;
b = a++;
System.out.println("a = " + a + ", b = " + b);

示例答案

示例1:0

示例2:9

示例3:8

示例4:8

示例5:a = 1, b = 0

具体解释可参考一看就懂的i++和++i详解_song854601134的博客-CSDN博客

二、C#中i++和++i在for循环中区别

这是chatgpt的回答(狗头保命)

1.在for循环运行效率的区别

经过多次搜查确认,两者运行效率差别很小,这个微小的差别在数据量较大的时候会有明显的效率差别

i++:需要申请一个临时变量保存i进行后续计算,再执行自增。
++i:直接原地自增,再进行后续计算,无需申请内存

2.在for循环中执行结果区别

执行结果没有区别只在于执行顺序的不同

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值