【Java入门】-- Java基础详解之 [运算符]

目录

1.  运算符介绍

2. 算术运算符

3. 关系运算符(比较运算符)

4. 逻辑运算符

5. 赋值运算符

6. 三元运算符

7. 运算符优先级

8. 标识符的命名规则和规范

9. 关键字

10. 保留字

11. 位运算符


1.  运算符介绍

运算符是一种特殊的符号,用以表示数据的运算,赋值和比较等。

  1. 算术运算符
  2. 赋值运算符
  3. 关系运算符[比较运算符]
  4. 逻辑运算符
  5. 位运算符
  6. 三元运算符

2. 算术运算符

算术运算符是对数值类型的变量进行运算的,Java程序中使用的非常多。

 注意细节:

  • 对于除号,它的整数和小数除有区别的;整数之间做除法时,只保留整数部分而舍弃小数部分。如:int x = 10/3,结果3。
  • 当对一个数取模时,可以等价 a%b = a - a/b*b
  • 当自增当作一个独立语言使用时,不管++i;还是i++,都是一样的。
  • 当自增当作一个表达式,j = ++i;等价于先i+1,再将结果赋给j
  • 当自增当作一个表达式,j = i++; 等价于先i赋给j,再将i值+1

3. 关系运算符(比较运算符)

关系运算符结果都是boolean型,也就是要么是true,要么是false。

关系表达式经常用在if结构条件中或循环结构的条件中。

注意 细节:

  • 关系运算符的结果boolean型,也就是要么是true,要么是false。
  • 关系运算符组成的表达式,我们称为关系表达式;a > b。
  • 比较运算符“==”不能写为“=”。

4. 逻辑运算符

用于连接多个条件(多个关系表达式),最终的结果也是boolean值。

  • 短路与 &&,短路或 ||,取反 |
  • 逻辑与 &,逻辑或  | ,逻辑异或  ^

 4.1  &&与&的区别

  1. &&短路与:如果第一个条件为false,则第二个条件不会判断,最终结果为false,效率高。
  2. & 逻辑与:不管第一个条件是否为false,则第二个条件都要判断,效率低。

4.2 || 和 | 的基本规则

名称语法特点
短路或 ||条件1||条件2两个条件只要有一个成立,结果为true,否则false
逻辑或 |条件1|条件2只要有一个条件成立,结果为true,否则为false

5. 赋值运算符

赋值运算符就是将某个运算后的值,赋给指定的变量。

基本赋值运算符:”=“  如:int a = 10;

复合赋值运算符:+=,-=,*=,/=,如a+=b 为:a = a+b;

特点:

  • 运算顺序从左到右。 int num = a+b+c;
  • 赋值运算符的左边只能是变量,右边可以是变量,表达式,常量值。int m = 45*56+a;
  • 复合运算符会类型转换

6. 三元运算符

基本语法

条件表达式 ?表达式1 :表达式2

运算规则:

  • 如果条件表达式为true,运算后的结果是表达式1.
  • 如果条件表达式结果为false,运算后的结果是表达式2.

7. 运算符优先级

  • 运算符有不同的优先级,所谓优先级就是运算顺序。
  • 只有单目运算,赋值运算是从右向左运算。
  • .    {}    ()     ,  
    右  -->  左++    --     ~     !(data type)
    左  -->  右*    /    %
    左  -->  右+      -      
    左  -->  右<<     >>         >>>       位移
    左  -->  右<   >        <=       >=      instanceof
    左  -->  右==      !=
    左  -->  右&
    左  -->  右^
    左  -->  右|
    左  -->  右&&
    左  -->  右||
    左  -->  右?    :
    右  -->  左=    *=    /=    %=  
    +=    -=   <<=    >>=
    >>>=      &=    ^=     |=

8. 标识符的命名规则和规范

  1.  Java对各种变量,方法和类等命名时使用的字符序列成为标识符。

  2. 凡是自己可以起名字的地方都叫标识符。 int  num  =  90;

  3. 标识符的命名规则:

    1. 由26个英语字母大小写,0-9,_或$组成。

    2. 数字不可开头,

    3. 不可用使用关键字和保留字。

    4. Java中严格区分大小写,长度无限制。

    5. 标识符中不能包含空格。

  4. 标识符命名规范:

    1. 包名:多单词组成时所有字母小写,com.lp.ccc

    2. 类名,接口名:单词首字母大写,大驼峰。StudentTaskDeml.

    3. 变量名,方法名:第一个字母小写,小驼峰。teacherFindById

    4. 常量名:所有字母大写,多单词用下划线连接。MAX_AGE

9. 关键字

用于定义数据类型的关键字:class,interface,enum,byte,short,int,long,float,double,char,boolean,void

用于定义数据类型值的关键字:

true,false,null

用于定义流程控制的关键字:

if,else,switch,case,default,while,do,for,break,continue,return 

用于访问权限修饰符的关键字:

private、protected、public

用于定义类,函数,变量修饰符的关键字

abstract、final、static、synchronized

用于定义类与类之间关系的关键字:

new、this、super、instanceof

用于异常处理的关键字:

try、catch、finally、throw、throws

用于包的关键字:

package、import

其他修饰符关键字:

native、strictfp、transient、assert、voatile

10. 保留字

Java保留字:现有版本尚未使用,以后可能会当作关键字使用。

如:byBalue,cast,future,generic,inner,operator,outer,rest,var,goto,const

11. 位运算符

  • Java中有七个位运算(&、|、^、~、>>、<<、>>>)
  • >> 、<< 、>>>运算规则
    • 算术右移>>:低位溢出,符号位不变,用符号位补溢出的高位
    • 算术左移<<:符号位不变,低位补0
    • >>>:逻辑右移也叫无符号右移:低位溢出,高位补0
  • 按位与 &两位全为1,结果为1,否则为0
    按位或  |两位有一个为1,结果为1,否则0
    按位异或 ^两位一个为0,一个为1,结果为1,否则为0
    按位取反 ~0 -->1,1 -> 0

  • 7
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

月月崽

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值