day06运算符

day06运算符,第1张

day06运算符 运算符 一、运算符的定义
  1. 运算符是指对 *** 作数的运算方式。

  2. 算术运算符、关系运算符、逻辑运算符、赋值运算符、 条件运算符、字符串连接运算符。

  3. 运算符是指对 *** 作数的运算方式。组成表达式的 Java *** 作符有很多种(什么是 *** 作数和 *** 作符,例如 1+2,其中 1 和 2 都是 *** 作数,+是 *** 作符, *** 作符和 *** 作数联合起来构成表达式)。

  4. 运算符按照其要求的 *** 作数数目来分,可以有单目运算符(1 个 *** 作数)、双目运算符(2 个 *** 作数)和三目运算符(3 个 *** 作数)。

  5. 运算符按其功能来分,有算术运算符、赋值运算符、 关系运算符、逻辑运算符、位运算符、条件运算符、字符串连接运算符和其他运算符。

二、运算符的分类 1、算数运算符

​ 算术运算符包括:+(两个数字求和)、-(两个数字相减)、*(两个数字乘积)、/(两 个数字相除)、%(两个数字取模或者求余)、++(单目运算符,对数字自加 1)、–(单目 运算符,对数字自减 1)。

重点讲解++和–

  1. java 语法中又有这样的规定,++出现在变量后,会先进行赋值后加一。例子:

    int c2=2;
    c2=c2++;
    System.out.println(c2);//结果为2
    
  2. java 语法中又有这样的规定,++出现在变量前,会先进行加一。例子:

    int c2=2;
    c2=++c2;
    System.out.println(c2);//结果为3
    
  3. 两个 int 类型数据进行数学运算之后的结果一定 是 int 类型。

2、关系运算符

关系运算符主要是完成数据和数据之间的比较

  1. <、>、<=、>=、==、!=。

  2. 任何一个关系运算符的运算结果都是布尔类型,最后的结果不是 true 就是 false,没有其他值。

3、逻辑运算符

逻辑运算符主要包括逻辑与(&),逻辑或(|),逻辑异或(^),短路与(&&),短路 或(||)。

  1. 所有逻辑运算符的特点是 *** 作数都是布尔类型,并且最终的运算结果也是布尔类型。

  2. 短路原则:与(&&)在左边的表达式结果为 false 的时候右边的表 达式则不再执行。

  3. 短路与(&&)左边为FALSE时右边不再执行,&左边为FALSE时右边还是会执行。例子:

    int c1=1;
    int c2=2;
    System.out.println(1>2&&c1>++c2);
    System.out.println(c2);//结果c2=2
    =================================
    int c1=1;
    int c2=2;
    System.out.println(1>2&c1>++c2);
    System.out.println(c2);//结果c2=3
    

短路||与|同样如此。

4、赋值运算符

赋值运算符目前也是只需要掌握=、+=、-=、*=、/=、%=。

  1. x += 1; //等同于 x = x + 1, y -= 1; //等同于 y = y - 1, z *= 2; //等同于 z = z * 2, m /= 3; //等同于 m = m / 3, n %= 3; //等同于 n = n % 3,
  2. 对于扩展类的赋值运算符在运算的过程中不会改变运算的结果类型,也就是说 byte b = 100; b += 1000就是:b = (byte)(b + 1000);b 变量最初是 byte 型,最后的运算结果还是一个 byte 类型。
  3. 以后在使用扩展类赋值运算符的时候要谨 慎,不小心就会精度损失的。例子:byte b = 100; b += 1000。就会造成精度的丢失。运行结果为76.
5、条件运算符 (1)、定义:

条件运算符属于三目运算符,它的语法结构是:布尔表达式?表达式 1:表达式 2。例子:int k=false?1:2;

(2)、运行原理

它的运行原理是这样的,先判断布尔表达式的结果是 true 还是 false,如果是 true,则选择表达式 1 的结 果作为整个表达式的结果,反之则选择表达式 2 的结果作为整个表达式的结果。

6、字符串连接运算符 (1)、定义:

实际上“+”运算符在 java 语言中有两个作用,作用一是对数字进行求和运算,作用二就 是字符串连接运算。当“+”运算的时候,两边的 *** 作数都是数字的话,一定会进行求和运算,只 要其中有一个 *** 作数是字符串类型,那么一定会进行字符串拼接运算,字符串拼接之后的结果 还是字符串类型。

(2)、注意

当一个表达式当中有多个“+”,并且在没有小括号的前提 下,遵循自左向右的顺序依次执行。例子:

int a=1;
int b=2;
System.out.println(a + " + " + b + " = " + a + b);//字符串连接运算1 + 2 = 12
System.out.println(a + " + " + b + " = " + (a + b));//加法运算1 + 2 = 3

将变量放到字符串当中进行拼接,可以这样 做:

在拼接的位置添加一个英文双引号,在双引 号中间添加两个加号,把字符串变量放到两个加号中间。

例子:System.out.println(“欢迎”+name+“回来!”);

总结:

1.int k = 10;

System.out.println(k++);

System.out.println(++k);

执行顺序:1、先输出k的值为10. 2、然后k自增为11, 3、k自增为12, 4、输出k的值。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5079088.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-16
下一篇 2022-11-16

发表评论

登录后才能评论

评论列表(0条)

保存