AriTest.java.bak 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. /*
  2. 运算符之一:算术运算符
  3. + - + - * / % (前)++ (后)++ (前)-- (后)-- +
  4. */
  5. class AriTest{
  6. public static void main(String[] args){
  7. //除号:/
  8. int num1 = 12;
  9. int num2 = 5;
  10. int result = num1/num2;
  11. System.out.println(result);//2
  12. int result2 = num1/num2*num2;
  13. System.out.println(result2);//10
  14. double result3 = num1/num2;
  15. System.out.println(result3);//2.0
  16. double result4 = num1/num2+0.0;//2.0
  17. double result5 = num1/(num2+0.0);//2.4
  18. double result6 = (double)num1/num2;//2.4
  19. double result7 = (double)(num1/num2);//2.0
  20. //%:取余运算
  21. //结果的符号与被模数的符号相同
  22. //开发中,经常使用%来判断能否被除尽的情况
  23. int m1 = 12;
  24. int n1 = 5;
  25. System.out.println("m1 % n1="+m1 % n1);//2
  26. int m2 = -12;
  27. int n2 = 5;
  28. System.out.println("m2 % n2="+m2 % n2);//-2
  29. int m3 = 12;
  30. int n3 = -5;
  31. System.out.println("m3 % n3="+m3 % n3);//2
  32. int m4 = -12;
  33. int n4 = -5;
  34. System.out.println("m4 % n4="+m4 % n4);//-2
  35. //(前)++:先自增1,然后再运算
  36. //(后)++ :先运算,后自增1
  37. int a1 = 10;
  38. int b1 = ++a1;
  39. System.out.println("a1="+ a1 + ",b1="+b1);//11,11
  40. int a2 = 10;
  41. int b2 = a2++;
  42. System.out.println("a2="+ a2 + ",b2="+b2);//11,10
  43. int a3 = 10;
  44. a3++;
  45. int b3 = a3;//11
  46. //注意点:
  47. short s1 = 10;
  48. //s1 = s1 + 1;//编译失败
  49. s1 = (short)(s1 + 1);//正确
  50. s1++;//自增1不会改变本身变量的数据类型
  51. System.out.println(s1);
  52. //问题:
  53. byte bb1 = 127;
  54. bb1++;
  55. System.out.println("bb1=" + bb1);//-128
  56. //(前)-- :先自减1,后运算
  57. //(后)--:先运算,后自减1
  58. int a4 = 10;
  59. int b4 = a4--;//int b4 = --a4;
  60. System.out.println("a4="+ a4 + ",b4="+b4);
  61. }
  62. }