Java复习之运算符

  1. 运算符

Java运算符可以分为赋值运算符,自加自减运算符,算数运算符,比较运算符,逻辑运算符,位运算符,三元运算符。

下面我们根据具体代码复习一下他们。

  • 赋值运算符
1 int a=10;
2 int b=50;
3 int c=a+b;//此处涉及到运算符的优先级,后面讲解

说明:由于赋值运算符“=”处理时会先取得右方表达式处理后的结果,因此一个表达式中若含有两个以上的“=”运算符时,会从最右方“=”开始处理。

  •  算数运算符
public class Arith {                                                                      //创建类

      public static void main(String[] args) {                                    //主方法

            float number1 = 45.56f;                                                   //声明float型变量并赋值

            int number2 = 152;                                                          //声明int型变量并赋值

            System.out.println("和为:" + number1 + number2);           //将变量相加之和输出

 System.out.println("差为:" + (number2 - number1));         //将变量相减之差输出

            System.out.println("积为:" + number1 * number2);          //将变量相乘的积输出

            System.out.println("商为:" + number1 / number2);            //将变量相除的商输出

      }

}
  •  整数的除法(运算符“/”)运算

当整数间进行除法运算时,其结果将舍弃小数部分,并且忽略四舍五入,最终的结果为商的整数部分,所以通过计算机来计算“5/3*3”与“5*3/3”的结果是不同的,前者为3,而后者为5。

  • 整数的求余(运算符“%”)运算

当整数间进行求余运算时,其运算结果为整数除法运算后的余数。

将一个整数除以0或除以0求余的运算

当进行一个整数除以0或除以0求余运算时,虽然可通过编译,但在运行时会抛出java.lang.ArithmeticException异常。

  • 比较运算符

 比较运算符属于二元运算符,用于程序里的变量之间、变量和自变量之间以及其他类型的信息之间的比较上。比较运算符的运算结果是boolean型。当运算符对应的关系成立时,运算结果是true,否则是false。所有比较运算符通常用在条件语句中作为判断的依据。比较运算符共有6个

> ,<, >=, <=,!=,==

比较运算符的结果为布尔类型。 

  • 自增自减运算符

     

public class Math{
        public static void main(String []args){
               int a;
               int b;
               a=10;
               b=a;
               System.out.println("a++="+(a++));//先用a在++
               System.out.println("++a="+(++a));//先++再用a
              System.out.println("b+a++="+(b+(a++)) );
               System.out.println("b+++a="+(b+(++a)));
}
}//--同理
  • 逻辑运算符

或与非:&&,&,||,!

package 复习;

public class a {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        int a;
        int b;
        a=10;
        b=20;
        System.out.println("a>b="+(a>b));
        System.out.println("a<b="+(a<b));
        System.out.println("(a<b)&&(a>b)="+((a<b)&&(a>b)) );
        System.out.println("(a<b)||(a>b)="+((a<b)||(a>b)));
        System.out.println("!((a<b)||(a>b))="+!((a<b)||(a>b)));

    }

}
  • 位运算符

位运算符用于处理整形和字符型的操作数。位运算是完全针对二进制位(bit)单位的操作。Java语言提供的位运算符如表1所示。

表1  逻辑运算符

运算符 用法 含义
~非 ~a 对a操作数按位取反
&与 b&a banda按位想与
|或 b|a b和a按位相或
^异或 b^a b和a按位异或
<<左移位 b<<a b按位左移a位
>>右移位 b>>a b按位右移a位
>>>无符号右移位 b>>>a b不带符号按位右移a位
  • 三运运算符
 1 package 复习;
 2 
 3 public class a {
 4 
 5     public static void main(String[] args) {
 6         // TODO Auto-generated method stub
 7         int a;
 8         int b;
 9         a=10;
10         b=20;
11         System.out.println("a>b?a:b="+(a>b?a:b));
12        
13 
14     }
15 
16 }

2.数据类型转换

自动类型转换

Java的8个基本数据类型可以进行混合运算。不同类型的数据在运算过程中,首先会自动转换为同一类型,然后才进行运算。数据类型可以根据占用存储空间大小分为高低级别,占用空间越小,级别越低,占用空间越大,级别越高。自动类型转换遵循低级到高级转换的规则。如图3.9所示。从左到右的数据类型不断升高,箭头指明了自动类型转换的规则。

强制类型转换

 当把高级别(即占用存储空间较大)的数据类型赋值给低级别(即占用存储空间较小)的数据类型时,必须进行的强制类型转换。其语法格式如下:

原文地址:https://www.cnblogs.com/gaochunhui/p/11700641.html