如果是条件极少(不大于3)的情况下或者是各个条件差距比较大的情况下(比如 case 100 ,case 200, case 300),编译器会把switch编译为if else 一样的实现,如果条件是连续的并且很多,则编译器会在内存生成一个表来存放switch的各个对应条件和结果。所以switch的效率在一定条件下是比if else高的。
如果是条件极少(不大于3)的情况下或者是各个条件差距比较大的情况下(比如 case 100 ,case 200, case 300),编译器会把switch编译为if else 一样的实现,如果条件是连续的并且很多,则编译器会在内存生成一个表来存放switch的各个对应条件和结果。所以switch的效率在一定条件下是比if else高的。
本文标题:switch 和 if 哪个效率高?
本文链接:https://www.haomeiwen.com/subject/rywzrqtx.html
网友评论