Java基础知识四——标识符

2018-01-30  本文已影响0人  嗷老板

一、运算符的概述

  运算符就是用于对常量和变量进行操作的符号

  表达式:用运算符连接起来的,符合Java语法的式子。不同的运算符连接的表达式是不同类型的表达式。

运算符的分类:

二、基本运算(+,-,*,/)

public class OperatorDemo01 {
    public static void main(String[] args) {
        //定义变量
        int a = 15;
        int b = 10;
        
        System.out.println(a + b);
        System.out.println(a - b);
        System.out.println(a * b);
        System.out.println(a / b);
        
        //整数相除只能得到整数,要想得到小数,就必须有浮点数参与运算
        System.out.println(15.0 / 4);
        System.out.println(15 / 4.0);
    }

}

三、取余(%)

  %:用于获取两个数据相除时的余数

例题:求1234每个位数上的数字

public class OperateDemo02 {
public static void main(String[] args) {
        int a=1234 / 1000;
        int b=1234 / 100 % 10;
        int c=1234 / 10 % 10;
        int d=1234 % 10;
        System.out.println("1234的千位数是:"+a);
        System.out.println("1234的百位数是:"+b);
        System.out.println("1234的十位数是:"+c);
        System.out.println("1234的个位数是:"+d);
    }
}

四、字符加法运算以及字符串加法运算

  字符参与加法运算,其实就是拿字符在计算机中存储的数据值来参与运算的

常用的字符:
  'A'——65
  'a'——97
  '0'——48

举例:

public class OperateDemo03 {
    public static void main (String [] args){
        int x= 'a' + '0';
        System.out.println(x);
        System.out.println("abc"+"123");
        System.out.println(123+"123");
        System.out.println(123+"123"+123);
        
        int y = 100;
        System.out.println("y="+y);
    }
}

  字符串参与加法运算,其实做的不是加法运算,二是字符串的拼接。

五、自增自减(++,--)

  ++,--:自增自减,用于对变量加1或者减1
  ++,--既可以用在变量的后面,也可以用在变量前面

使用方法:
  单独使用的时候:++或者--放在变量的前面或者后面,结果一样。
  参与其他操作的时候:

口诀:++在前,先加1;++在后,后加1。
   不管++在前还是在后,结果都加1
举例:

public class OperatorDemo04{
    public static void main(String[] args) {
         int x=4;    
         int y=(x++)+(++x)+x*10;
         System.out.println("x="+x);
         System.out.println("y="+y);
         //结果:x=6  y=70
         
         int a=5;
         int b = (a++)+(++a)+(++a)-(a--);
         System.out.println("a="+a);
         System.out.println("b="+b);
         //结果:a=7  b=12
    }

}

六、赋值运算符(=,+=,-=,*=,/=...)

举例:

public class OperatorDemo05 {
    public static void main(String[] args) {
         short s = 1;
         s += 1;
         System.out.println("s="+s);
         //结果: s=1
    }

}

注意:
  扩展的赋值运算符隐含了强制类型转换
例如:
  有一个变量a,a+=10,相当于:a=(a的数据类型)(a+10)

七、关系运算符(==,!=,>,>=,<,<=)

  关系运算符的结果是boolean类型。

public class OperatorDemo06{
    public static void main(String[] args) {
        int a = 50;
        int b = 70;
        int c = 50;
        
        System.out.println(a == b);//结果:false
        System.out.println(a > b);//结果:false
        System.out.println(b >= c);//结果:true
        System.out.println(a != c);//结果:false
        System.out.println(c >= b);//结果:false
    }

}

八、逻辑运算符(&,|,^,!,&&,||)

  &:有false则false
  |:有true则true
  ^:相同则false,不同则true
  !:true则false,false则true

举例:

public class OperatorDemo7 {
    public static void main(String[] args) {
        int a=90;
        int b=95;
        int c=80;
        
        boolean x=a>90 & b>90;
        System.out.println(x);
        //结果:false
        
        boolean y= a>90 | b>90;
        System.out.println(y);
        //结果:true
        
        boolean z = (a<b) ^ (a<c);
        System.out.println(z);
        //结果:true
        
        boolean m = !(a>b);
        System.out.println(m);
        //结果:true
    }

&&和&的区别:
  &&如果左边是false,右边不执行。
  &无论左边是true还是false,右边都会执行
也叫短路问题,&&和||的效率比较高,开发中一般使用&&和||。
举例:

public class OperatorDemo08 {
    public static void main(String[] args) {
        int a = 5;
        int b = 10;
    
        boolean x = (a++<5) & (b++>10);
        System.out.println(x);
        System.out.println("a="+a);
        System.out.println("b="+b);
        //结果:false a=6 b=11
        
        boolean y = (a++<5) && (b++>10);
        System.out.println(y);
        System.out.println("a="+a);
        System.out.println("b="+b);
        //结果:false a=7 b=11
    }

}

九、三元运算符

三元运算符的格式:
  (关系表达式)?表达式1:表达式2;
执行流程:
  1、计算关系表达式的值,看是true还是false
  2、如果是true,表达式1就是运算结果
    如果是false,表达式2就是运算结果
例题:得到三个数中的最大值

public class OperatorTest09 {
    public static void main(String[] args) {
        //定义三个变量
        int a = 3;
        int b = 4;
        int c = 2;
        
        //比较三个数中的最大值
        int d = (a > b) ? a : b;
        int max = (c > d) ? c : d;
        
        System.out.println(max);
    }
}
上一篇 下一篇

猜你喜欢

热点阅读