永不服输的Java之路---重学Java (第三章)

如若文章中出现冲突,或者出现错误,请联系 QQ:2669157689 指出我的问题。谢谢~
本章说明一下变量的声明,数据类型及其转换;Java中的关键字,保留字;运算符和表达式等

JAVA编程基础 —— 变量和运算符

1. Java的程序结构

Java块分为数据类型,变量,运算符和控制流语句。

  1. 数据类型
    数据类型确定要存储在内存中的数据的类型。
  2. 变量
    变量是存储数据的基本单元。
  3. 运算符
    运算符是一个符号,用于操作一个或多个参数以得出结果。程序是按顺序执行的。
  4. 控制流语句
    控制流语句允许改变语句执行的顺序。

2. 标识符、关键字和保留字

  1. 标识符
  • Java中的包、类、方法、参数和变量的名称
  • 标识符的命名规则
    ① 必须以字母、下划线(_)或美元符号($)开头;
    ② 余下的字符可以是下划线、美元符号或任何的字母或数字,长
    度不限。标识符中不能有空格;
    ③ 不能使用Java中的关键字或者保留字做为标识符。
元素 规范 示例
类名 Pascal 规则 Person StudentDemo
变量名 Camel 规则 age height avgValue
方法名 Camel 规则 getAge setUserName
包名 全部小写 com.neusoft
常量名 全部大写 MAX_VALUE
  1. 关键字/保留字
    Java中的关键字/保留字
abstract continue goto null switch
assert default if package synchronized
boolean do implements private this
break double import protected throw
byte else instanceof public throws
case extends int return transient
catch final interface short try
char finally long static void
class float native strictfp volatile
const for new super while

3. 数据类型

Java中的数据类型

  • 在Java中,数据类型分为俩大类:
    ① 基本数据类型
    ② 引用数据类型
    具体请看另一篇大佬的文章,链接

4. 常量

Java中的常量

  • 常量指程序里持续不变的值,在整个程序运行过程中它是不可改变的。
  • 常见的常量有:
    ① 整型常量,如:123,890,123L
    ② 浮点数常量,如:123.456,1.2F
    ③ 布尔型常量,如:true,false
    ④ 字符常量,如:‘a’, '8’

5. 变量

  1. 变量的概念
  • 变量是指在程序的运行过程中随时可以发生变化的量
  • 变量是程序中数据的临时存放场所
    ① 保存程序运行是用户输入的数据
    ② 特定的运算结果等
  1. 变量的声明
  • 格式: 变量类型 变量名[ = 变量初值]
    例如:
int x = 3;
double b = 0.123;
char ch;
ch = 'a';

6. 数据类型的转换

  1. 自动类型转换(隐式类型转换)
  • 有多种类型的数据混合运算时,系统首先自动的将所有数据转换成容量最大的那一种数据类型,然后经行计算。
  • 自动转换规则
    • boolean 类型不可以转换为其他的数据类型
    • 整型、字符型、浮点型的数据在混合运算中相互转换,转换时遵守以下原则:
      转换原则
    • byte、short、char 之间不会相互转换,他们三者在计算时首先会
      转换为 int 类型
  1. 强制类型转换(显示类型转换)
  • 容量大的数据类型转换为容量小的数据类型时,需要使用强制类
    型转换,其格式如下:变量 = (目标类型) 值
    例如:
byte a;
int b;
a = (byte) b;
  • 在强制类型转换过程中,源类型的值可能大于目标类型,因此
    可能造成精度降低或溢出,使用时需注意

7. 运算符

  1. 运算符(操作符)
  • 是一种特殊的符号,用以表示数据的运算、赋值和比较
  • 运算符的种类:
    • 算术运算符: +、﹣、*、/、%、++、 --(自增、自减)单目
    • 赋值运算符:=、+=、﹣=、*=、/=、%= (自反赋值)
    • 比较运算符:>、<、>=、 <=、= =、!=、instanceof
    • 逻辑运算符:!、&&、||
    • 位运算符: &、|、^ 、 ~、>>、<<、>>>(二进制数据)
    • 条件运算符
      • 条件运算符很独特,因为它是用三个操作数组成表达式的三元运算符。它可以替代某种类型的 if-else 语句 a ? b:c
  1. 算术运算符
符号 含义 备注
+ 加法
- 减法
* 乘法
/ 除法 若是两个整数相除,只保留整数部分;
% 取余 被模数为正数结果都为正,被模数为负数结果都为负
++ 自增 ++变量名:变量在参与其他操作前先将自己加1 变量名++:先用原来的值参与其他操作后,再将自己加1
自减 算法同++
+ 字符串连接 当操作数中只要有一个是String类型,系统会自动另一个操作数转换成字符串类型,然后进行连接
  1. 赋值运算符
符号 含义 备注
= x=y; 把变量y的值赋给x
+= x+=y; x=x+y;
-= x-=y; x=x-y;
*= x*=y; x=x*y;
/= x/=y; x=x/y;
  1. 比较运算符(关系运算符)
符号 含义 备注
== 相等于 注意不要误写成 “ = ”
!= 不等于
< 小于
> 大于
<= 小于等于(不大于)
>= 大于等于(不小于)
  1. 逻辑运算符(布尔运算符)
  • 逻辑运算符两端的操作数必须是布尔类型的值
符号 含义 备注
&& 逻辑与 相当于“且”,如果用&&连接表达式时,如果左面的表达式为false,则将不会计算其右边的表达式
|| 逻辑或 相当于“或”,如果左面的表达式为true,则将不会计算其右边的表达式
逻辑非
  1. 位运算符(只对byte、short、char、int、long有效)
  • 左移和右移运算相当于实现整数乘以或除以2的n次方
符号 含义 备注
& 按位“与” 只有参加运算的两位都为1,&运算的结果才为1,否则为0
| 按位“或” 只有参加运算的两位都为0,|运算的结果才为0,否则为1
^ 异或 只有参加运算的两位不同,^运算的结果才为1,否则为0
<< 左移 a<<b,将a的二进制数据左移b位,右边移空的部分补0
>> 右移 a>>b,将a的二进制数据右移b位,如果最高位是0,则左边移空的部分补0,如果最高位是1,则左边移空的部分补1
>>> 无符号右移 不管最高位是0或1,左边移空部分都补0
  1. 三元运算符
  • 所谓三元运算符,是对三个表达式进行的集中比较,表达式1的结果为true时,就为第二个表达式,如果为false时,就为第三个表达式。语法是:
  • 表达式1?表达式2:表达式3
  1. 运算符的优先级
  • 运算符的优先级
    • 按操作数多少划分
      一元操作符 > 二元操作符 > 三元操作符
    • 按运算类型划分
      算术运算符 > 关系运算符 > 逻辑运算符 > 赋值运算符
    • 尽量多的使用括号
      括号优先级别最高
  • 表达式通常由多个运算符组成。优先级的规则决定每个运算符在任何
    给定表达式中的计算顺序
顺序 运算符
1. 括号
2. 一元运算符,如 -、++、- -和 !
3. 算术运算符,如 *、/、%、+ 和 -
4. 关系运算符,如 >、>=、<、<=、== 和 !=
5. 逻辑运算符,如 &、^、
6. 条件运算符和赋值运算符,如 ? :、=、*=、/=、+= 和 -=

8. 表达式

表达式是符合一定语法规则的运算符和运算数的序列

  1. 表达式的值和类型
  • 对表达式中操作数进行运算得到的结果称为表达式的值
  • 表达式值的数据类型即为表达式的类型
  1. 表达式的运算顺序
  • 应按照运算符的优先级从高到低的顺序进行
  • 优先级相同的运算符按照事先约定的结合方向进行
  1. 举例
  • 算术表达式
    • (x+y-12)*100
  • 关系表达式
    • x>y
    • x>=y
    • x!=y
    • x==y
  • 逻辑表达式
    • x&&y
    • x||y||z
    • (!x)&&(!y)-
  • 赋值表达式
    • x=y
    • x+=y

下一章更新流程控制语句…

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章