【Java-Day02】语法篇:变量/数据类型/标识符/运算符/类型转换

目录

一.字面量

二.变量

三.数据类型

四.标识符

五.运算符

[5.1 算术运算符](#5.1 算术运算符)

[5.1.1 数字运算](#5.1.1 数字运算)

[5.1.2 字符运算](#5.1.2 字符运算)

[5.1.3 字符串运算](#5.1.3 字符串运算)

[5.2 自增自减运算符](#5.2 自增自减运算符)

[5.3 赋值运算符](#5.3 赋值运算符)

[5.4 关系运算符](#5.4 关系运算符)

[5.5 逻辑运算符](#5.5 逻辑运算符)

[5.6 三元运算符](#5.6 三元运算符)

[5.7 运算符优先级](#5.7 运算符优先级)


一.字面量

字面量类型

  • 整数
  • 小数
  • 字符串(双引号引起来)
  • 字符(单引号引起来,内容只能有一个)
  • 布尔: true false
  • 空 null

二.变量

变量的定义格式:

  • 数据类型 变量名 = 数据值;
  • int a = 10 ;

注意:

  • 变量只能存一个值
  • 变量名不能重复
  • 使用前一定要赋值
  • 一条语句可以定义或赋值多个变量

键盘录入:

获取键盘上输入的数据:使用 Scanner。

三.数据类型

基本数据类型(四类八种):

整数类型,小数类型,字符类型,布尔类型。

注意:

  • long类型数据必须以L结尾,可以大写也可以小写。
  • float类型数据必须以f或F结尾。
  • 取值范围大小关系:double > float > long > int > short > byte

|------------|---------|
| 整数 | 内存 |
| byte | 1字节(8位) |
| short | 2字节 |
| int | 4 |
| long | 8 |
| 浮点数(小数) | 内存 |
| float | 4 |
| double | 8 |

|---------|-----|
| char | 2字节 |
| boolean | 1字节 |

引用数据类型:

四.标识符

标识符 就是我们自己起的名字。比如类名,变量名,方法名等等。

标识符的命名规则:

  • 必须由数字,字母,下划线_,美元符&组成。
  • 不能以数字开头。
  • 不能是关键字。
  • 区分大小写。
  • 建议起名 见名知意,驼峰命名。

五.运算符

5.1 算术运算符

+,- ,* ,/ ,% 加 减 乘 除 取余

注意:

  • 整数相除还是整数,取商。
  • 小数直接参与运算,结果可能不精确

5.1.1 数字运算

类型不一样的不能运算,需要转换成同类型的才能计算

类型转换:

1.隐式转换:不同类型的数据进行计算,默认采取隐式转换。

  • 1.如有byte short类型的数据,先提升为int类型
  • 2.把取值范围小的提升为取值范围大的再进行计算。

2.强制转换:强制转换需要自己写转换代码

在被强转的数据前面加上目标数据类型

java 复制代码
int a = 10;
int b = 20;

byte c = (byte) a;
byte d = (byte)(a+b)

5.1.2 字符运算

字符和数字进行运算,字符需要查ASCII码表,将对应的字符转换成数字再和数字相加。

java 复制代码
 char a = 'A'; //对应ASCII码表65
 int b = 1;
 System.out.println(a + b);//输出66

通过强制转换可以也将结果转换成字符。比如字母大小写转化。

java 复制代码
char a = 'A';
int b = 32;
System.out.println((char)(a + b));//输出a

5.1.3 字符串运算

字符串只有 + 操作,没有其他操作

任意数据 + 字符串都是拼接操作,并产生一个新的字符串。

5.2 自增自减运算符

|--------|---------|
| 符号 | 说明 |
| ++ | 变量值 + 1 |
| -- | 变量值 - 1 |

5.3 赋值运算符

|--------|--------|
| 符号 | 说明 |
| = | 直接赋值 |
| += | 加后赋值 |
| -= | 减后赋值 |
| *= | 乘后赋值 |
| /= | 除后赋值 |
| %= | 取余赋值 |

5.4 关系运算符

|--------|--------|
| 符号 | 说明 |
| == | 等于 |
| != | 不等于 |
| > | 大于 |
| >= | 大于等于 |
| < | 小于 |
| <= | 小于等于 |

5.5 逻辑运算符

|--------|--------|
| 符号 | 说明 |
| & | 与(且) |
| | | 或 |
| ! | 非(取反) |

短路逻辑运算符

|--------|--------|-----------------|----------------|
| 符号 | 作用 | 案例 | 说明 |
| && | 短路与 | a>1 && a<10 | 左边为false,右边不执行 |
| || | 短路或 | a>1 || a<10 | 左边为true,右边不执行 |

逻辑运算符运算和单个的& 、|是一样的,只是提高了效率。

5.6 三元运算符

格式:关系表达式 ? 表达式1 : 表达式2 ;

关系表达式为 true ,取表达式1 ;关系表达式为 false,取表达式2.。

5.7 运算符优先级

小括号优先级最大。

相关推荐
luj_17682 小时前
残熵算法实时化三大瓶颈突破
c语言·开发语言·网络·经验分享·算法
我命由我123453 小时前
Android Studio - Android Studio 自定义预览尺寸
android·java·ide·java-ee·android studio·android-studio·android runtime
不听话坏3 小时前
Ignition篇(下 一) 动态执行前的事情
开发语言·前端·javascript
likeyi073 小时前
require 和 import的区别
开发语言·前端
咖啡八杯4 小时前
GoF设计模式——迭代器模式
java·后端·设计模式·迭代器模式
远离UE44 小时前
UE5 compute shader 原子加
开发语言·c++·ue5
C+-C资深大佬4 小时前
C++ 显式类型转换详解:static_cast、dynamic_cast、const_cast、reinterpret_cast
开发语言·c++
AIGS0014 小时前
企业AI落地的关键认知:向量空间JBoltAI的本体语义平台
java·人工智能·人工智能ai大模型应用
KaMeidebaby5 小时前
卡梅德生物技术快报|抗体亲和力成熟工业化调控新机制:差异性浆细胞增殖工艺优化思路
java·开发语言·人工智能·算法·机器学习·架构·spark
luj_17685 小时前
心形曲线轨迹控制三大关键技术
c语言·开发语言·c++·经验分享·算法