服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - Java教程 - 一篇文章带你入门Java运算符

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

2021-11-04 10:46键盘敲烂 月薪过万 Java教程

这篇文章主要介绍了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

总结

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

原文链接:https://blog.csdn.net/qq_39527814/article/details/119305911

延伸 · 阅读

精彩推荐
  • Java教程升级IDEA后Lombok不能使用的解决方法

    升级IDEA后Lombok不能使用的解决方法

    最近看到提示IDEA提示升级,寻思已经有好久没有升过级了。升级完毕重启之后,突然发现好多错误,本文就来介绍一下如何解决,感兴趣的可以了解一下...

    程序猿DD9332021-10-08
  • Java教程小米推送Java代码

    小米推送Java代码

    今天小编就为大家分享一篇关于小米推送Java代码,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧...

    富贵稳中求8032021-07-12
  • Java教程Java BufferWriter写文件写不进去或缺失数据的解决

    Java BufferWriter写文件写不进去或缺失数据的解决

    这篇文章主要介绍了Java BufferWriter写文件写不进去或缺失数据的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望...

    spcoder14552021-10-18
  • Java教程Java实现抢红包功能

    Java实现抢红包功能

    这篇文章主要为大家详细介绍了Java实现抢红包功能,采用多线程模拟多人同时抢红包,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙...

    littleschemer13532021-05-16
  • Java教程xml与Java对象的转换详解

    xml与Java对象的转换详解

    这篇文章主要介绍了xml与Java对象的转换详解的相关资料,需要的朋友可以参考下...

    Java教程网2942020-09-17
  • Java教程Java8中Stream使用的一个注意事项

    Java8中Stream使用的一个注意事项

    最近在工作中发现了对于集合操作转换的神器,java8新特性 stream,但在使用中遇到了一个非常重要的注意点,所以这篇文章主要给大家介绍了关于Java8中S...

    阿杜7482021-02-04
  • Java教程Java使用SAX解析xml的示例

    Java使用SAX解析xml的示例

    这篇文章主要介绍了Java使用SAX解析xml的示例,帮助大家更好的理解和学习使用Java,感兴趣的朋友可以了解下...

    大行者10067412021-08-30
  • Java教程20个非常实用的Java程序代码片段

    20个非常实用的Java程序代码片段

    这篇文章主要为大家分享了20个非常实用的Java程序片段,对java开发项目有所帮助,感兴趣的小伙伴们可以参考一下 ...

    lijiao5352020-04-06