一篇文章带你入门Java运算符

 更新时间:2021年08月04日 09:28:41   作者:键盘敲烂 月薪过万  
这篇文章主要介绍了Java基本数据类型和运算符,结合实例形式详细分析了java基本数据类型、数据类型转换、算术运算符、逻辑运算符等相关原理与操作技巧,需要的朋友可以参考下

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

  • 算数运算符
  • 赋值运算符
  • 关系运算符
  • 逻辑运算符
  • 位运算符
  • 三元运算符

算数运算符(Arithmetic operator)

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

算数运算符

运算符 运算 范例 结果
+ 正号 +7 7
- 负号 b=11;-b -11
+ 9+9 18
- 10-8 2
* 7*8 56
/ 9/9 1
% 取模(取余) 11%9 2
++ 自增(前):先运算后取值 a=2;b=++a; a=3;b=3
++ 自减(后):先取值后运算 a=2;b=a++; a=3;b=2
- - 自增(前):先运算后取值 a=2;b=--a; a=1;b=1
- - 自减(后):先取值后运算 a=2;b=a--; a=1;b=2
+ 字符串相加 "hsp"+"edu" "hsp edu"

关系运算符(Relational operator)

  • 关系运算符的结果都是boolean型,也就是要么是true,要么是false。
  • 关系表达式经常用在if结构的条件中或循环结构的条件中。

关系运算符

运算符 运算 范例 结果
== 相等于 8==7 false
!= 不等于 8!=7 true
< 小于 8<7 false
> 大于 8>7 true
<= 小于等于 8<=7 false
>= 大于等于 8>=7 true
instanceof 检查是否是类的对象 "hsp" instanceof String true

逻辑运算符(Logical operator)

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

逻辑运算符

  • 短路与&&,短路或||,取反!。
  • 逻辑与&,逻辑或|,^逻辑异或。
a b a&b a&&b a|b a||b !a a^b
true true true true true true true true
true false false false true true false true
false true false false true true true true
false false false false false false true false
  • a&b:&叫逻辑与:规则:当a和b同时为true,则结果为true,否则为false。
  • a&&b:&&叫短路与:规则:当a和b同时为true,则结果为true,否则为false。
  • a|b:|叫逻辑或:规则:当a和b,有一个为true,则结果为true,否则为false。
  • a||b:||叫短路或:规则:当a和b同时为true,则结果为true没否则为false。
  • !a:叫取反(非运算):当a为true,则结果为false,当a为false时,结果为true。
  • a^b:叫逻辑异或:当a和b不同时,则结果为true,否则为false。

赋值运算符(Assignment Operators)

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

基本赋值运算符:= , int a =10;。

符合赋值运算符:+= , -= , *= , /= , %=等。

赋值运算符特点

1.运算顺序从右往左,int num = a + b + c;

2.赋值运算符的左边只能是变量,右边可以是变量,表达式,常量值 ,int num = 20; int num2 = 78*34 - 10; int num3 = a;

3.复合赋值运算符等价于下面的效果

比如:a+=3;等价于a=a+3;

4.复合赋值运算符会进行类型转换

byte b = 2; b+=3;b++;

三元运算符(Ternary operator)

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

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

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

口诀:[一真]

使用细节

1.表达式1和表达式2要为可以赋给接受变量的类型(或可以自动转换)。

2.三元运算符可以转换成if else语句。

运算符优先级

1.运算符有不同的优先级,所谓优先级就是表达式运算中的运算顺序。如右表,上一行运算符总优先于下一行。

2.只有单目运算符,赋值运算是从右向左运算的。

运行左右顺序 运行顺序
R——>L . () {} ; ,
L——>R ++ -- ~ !(data type)
L——>R * / %
L——>R + -
L——>R << >> >>> 位移
L——>R < > <= >= instanceof
L——>R == !=
L——>R &
L——>R ^
L——>R |
L——>R &&
L——>R ||
L——>R ? :
R——>L = *= /= %=
+= -= <<= >>=
/>>>= &= ^= |=

标识符的命名规则和规范

标识符概念

  • Java对各种变量,方法和类等命名时使用的字符序列称为标识符。
  • 凡是自己可以起名字的地方都叫标识符 int num1 = 90;。

标识符的命名规则(必须遵守)

  • 由26个名文字母大小写,0-9,_或$组成。
  • 数字不可以开头,int 3ab = 1;。
  • 不可以使用关键字和保留字,但包含关键字和保留字。
  • Java中严格区分大小写,长度无限制。 int totalNum = 10; int n = 90;。
  • 标识符不能包含空格。int a b = 90;。

标识符命名规范

1.包名:多单词组成时所有字母都小写: aaa.bbb.ccc //比如com.hsp.crm

2.类名、接口名:多单词组成时,所有单词的首字母大写: XxxYyyZzz

比如:TankShotGame

3.变量名、方法名:多单词组成时,第一个单词首字母小写,第二个单词开始每个

单词首字母大写: xxxYyyZzz 比如: tankShotGame

4.常量名:所有字母都大写。多单词时每个单词用下划线连接: XXX YYY ZZZ

比如:定义一个所得税率TAX RATE

5.后面我们学习到类,包,接口,等时,我们的命名规范要这样遵守,更加详细的 看文档.

关键字定义和特点

定义:被Java语言赋予了特殊含义,用做专门用途的字符串(单词)。

特点:关键字中所有字母都为小写。

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

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

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
用于定义类与类之间关系的关键字
extends implements
用于定义建立实例及引用实例,判断实例的关键字
new this super instanceof
用于异常处理的关键字
try catch finally throw throws
用于包的关键字
package import
其他修饰符的关键字
native strictfp transient volatile assert

保留字

Java保留字:现有Java版本尚未使用,但以后版本可能会作为关键字使用。自己命名标识符时要避免使用这些保留字:

byValuecastfuturegenericinneroperatorouterrestvargotoconst

总结

本篇文章就到这里了,希望能给你带来帮助,也希望您能够多多关注脚本之家的更多内容!

相关文章

  • Spring Boot 开发私有即时通信系统(WebSocket)

    Spring Boot 开发私有即时通信系统(WebSocket)

    本文利用Spring Boot作为基础框架,Spring Security作为安全框架,WebSocket作为通信框架,实现点对点聊天和群聊天
    2017-04-04
  • Spring Cloud Gateway去掉url前缀

    Spring Cloud Gateway去掉url前缀

    这篇文章主要介绍了Spring Cloud Gateway去掉url前缀的操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-07-07
  • 一文带你学会Java网络编程

    一文带你学会Java网络编程

    网络编程是指编写运行在多个设备(计算机)的程序,这些设备都通过网络连接起来。这篇文章将带大家深入了解一下Java的网络编程,需要的可以了解一下
    2022-08-08
  • 解决idea导入ssm项目启动tomcat报错404的问题

    解决idea导入ssm项目启动tomcat报错404的问题

    今天小编就为大家分享一篇解决idea导入ssm项目启动tomcat报错404的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-08-08
  • Java四种遍历Map的方法

    Java四种遍历Map的方法

    今天小编就为大家分享一篇关于Java四种遍历Map的方法,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-01-01
  • 解决工具接口调用报错:error:Unsupported Media Type问题

    解决工具接口调用报错:error:Unsupported Media Type问题

    当遇到"UnsupportedMediaType"错误时,意味着HTTP请求的Content-Type与服务器期望的不匹配,比如服务器期待接收JSON格式数据,而发送了纯文本格式,常见的Content-Type类型包括text/html、application/json、multipart/form-data等
    2024-10-10
  • idea 创建 maven web 工程流程(图文教程)

    idea 创建 maven web 工程流程(图文教程)

    这篇文章主要介绍了idea 创建 maven web 工程流程(图文教程),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-05-05
  • hibernate存取json数据的代码分析

    hibernate存取json数据的代码分析

    这篇文章主要介绍了hibernate存取json数据的代码分析,需要的朋友可以参考下
    2017-09-09
  • Java mongodb连接配置实践

    Java mongodb连接配置实践

    这篇文章主要介绍了Java mongodb连接配置实践,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-12-12
  • java 利用java反射机制动态加载类的简单实现

    java 利用java反射机制动态加载类的简单实现

    下面小编就为大家带来一篇java 利用java反射机制动态加载类的简单实现。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-09-09

最新评论