zoukankan      html  css  js  c++  java
  • 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所示。从左到右的数据类型不断升高,箭头指明了自动类型转换的规则。

    强制类型转换

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

  • 相关阅读:
    BZOJ3105: [cqoi2013]新Nim游戏 博弈论+线性基
    BZOJ3759: Hungergame 博弈论+线性基
    NOI模拟赛Day2
    期望dp BZOJ3450+BZOJ4318
    NOI模拟赛 Day1
    NOI模拟 热身赛T1
    【BZOJ4260】 Codechef REBXOR 可持久化Trie
    【BZOJ3673】&&【BZOJ3674】: 可持久化并查集 by zky 可持久化线段树
    【BZOJ3207】花神的嘲讽计划I 可持久化线段树/莫队
    【bzoj3527】[Zjoi2014]力 FFT
  • 原文地址:https://www.cnblogs.com/gaochunhui/p/11700641.html
Copyright © 2011-2022 走看看