Java中x ++和x = x + 1之间的差异

x ++自动处理类型转换,因为x = x + 1需要进行类型转换,以防x不是int变量。请参阅下面的示例-

示例

public class Tester {
   public static void main(String args[]) {

      byte b = 2;
   
      //必须进行类型转换
      //因为1是int而b是字节变量
      b = (byte) (b + 1);
      System.out.println(b);
      byte b1 = 2;

      //由编译器进行隐式类型转换
      b1++;
      System.out.println(b1);
   }
}

输出结果

3
3