1 基本常用
2 运算
(相应的 i 可以替换为s,l,f,d,分别指代int,short,long,float,double)
iadd | int类型的加法 |
isub | int类型的减法 |
imul | int类型的乘法 |
idiv | int类型的除法 |
irem | int类型的除法的余数 |
ineg | int类型的取反操作 |
iinc | int类型的本身加上一个常量 |
3 流程控制
(相应的 i 可以替换为s,l,f,d,a,分别指代int,short,long,float,double,对象引用)
ifeq | 是否等于0 |
ifne | 是否不等于0 |
iflt | 是否小于0 |
ifge | 是否大于等于0 |
ifgt | 是否大于0 |
ifle | 是否小于等于0 |
if_icmpeq | 判断两个值是否相等 |
if_icmpne | 判断两个值是否不相等 |
if_icmplt | 判断先入栈的是否小于后入栈的 |
if_icmple | 判断先入栈的是否小于等于后入栈的 |
if_icmpge | 判断先入栈的是否大于等于后入栈的 |
if_icmpgt | 判断先入栈的是否大于后入栈的 |
ifnull | 判断是否为null |
ifnonnull | 判断是否不为null |
4 比较
lcmp | 比较两个值long类型值 |
fcmpl | 比较float类型值(当遇到NaN时,返回-1) |
fcmpg | 比较float类型值(当遇到NaN时,返回1) |
dcmpl | 比较double类型值(当遇到NaN时,返回-1) |
dcmpg | 比较double类型值(当遇到NaN时,返回1) |