目录
直接量(字面值)
概念 :
在程序中可以字节使用的值
分类 :
数值型字面值
整数
100 88 -8
前缀来指定整数的进制,默认都是十进制数
二进制 0b10
八进制 010
十六进制 0x10
浮点数
3.14 -0.05
字符型字面值
一对单引号引起来 只能表示一个字符
'a' '+'
注意 :
1*单引号中不能表示多个字符 'abc'
2*单引号中不能为空 ' '
转义字符 :
格式 :\字符
例如 : \'-----'
\t-------制表符
\r\n----回车换行
字符串型字面值
一对双引号引起来
" "---空字符串
"a" --- 字符串a
"a1b2" ---- 支持多个字符
补充知识点 :
System.out.println("ab");先输出ab 换行操作
System.out.print("ab");只输出ab,不换行
System.out.println();可以,只换行
System.out.print();编译报错
布尔型字面值
布尔 : 指的是逻辑判断的结果
true 正确的
false 错误的
变量 常量
变量 :
概念 :
可以发生变化的量
格式 :
(一)数据类型 变量名 = 初始化值;
(二) 先声明 再赋值
数据类型 变量名; //先声明一个变量
变量名 = 初始化值; //给变量初始化赋值
什么时候使用,什么时候赋值,内存利用最大化
变量名 : 标识符
数据类型 :
int : 整数
例如 :
int num = 8; 定义了一个变量 值为8
使用 ;
可以通过变量名来引用变量的值
修改变量的值 :
变量名 = 新值;
变量值一旦被修改,之后通过变量所取得值都为新值
注意 :
在目前场景下,变量名不能重复
数据类型 变量名1 = 值1,变量名2 = 值2; 同时定义多个变量----所有变量都是同一数据类型
常量
概念:
引用不可以发生变化的量
格式:
final : 数据类型 常量名 = 初始化值;
常量名 : 所有字母都要大写 单词之间通过 _ 来分隔
例如 : MAX_VALUE
例如 :
final int MAX_VALUE = 88 // 定义了一个常量值为88
使用 :
可以通过常量名来引用常量的值
数据类型
弱类型 : js python
var x = 10;
x = 3.5;
x =" hello" ;
对类型没有强制约束
强类型 : java
int a = 5;
a = 3.5; //报错
引用数据类型 : 类 数组 枚举等
基本数据类型 :
八大基本数据类型都是关键字
四类八种
整型(4种)
byte | 字节型 | 1字节 | -128~127 -2^7~2^7-1 |
short | 短整型 | 2字节 | -2^15~2^15-1 |
int | 整型 | 4字节 | -2^31~2^31-1 |
long | 长整型 | 8字节 | -2^63~2^63-1 |
1*int类型是整型最常用的类型
2*整型字面值默认都是int类型
3*整数字面值如果超出了int范围,希望通过long类型来表示,则可以在后缀处加L或者l
浮点型(2种)
float | 单精度浮点型 | 4字节 | 有效数字位数7-8位 |
double | 双精度浮点型 | 8字节 | 有效数字位15-16位 |
1* double类型是浮点型常用的类型
2* 浮点型字面值都是double类型
3* double类型转为float类型 可能会溢出(损失)
4* 如果需要指定浮点字面值用float类型来存储 可以加F或者f后缀
5* Java也支持在浮点数字面值后面加D或者d表示double来存储
字符型(1种)
char | 字符型 |
char c1 = ' a ';
注意:
char c;
c = 98;
System.out.println(c);//b
可以将在码表范围内的整数值赋值给char类型的变量
布尔型(1种)
boolean | 布尔型 |
值要么为true 要么为false
八大数据类型 :
逻辑性
byte short int long float double char boolean
数据类型的转换
基本数据类型
自动类型转换
数值型 :
从小到大
整数可以自动转换为浮点数,默认是在整数加.0
byte--->short------>int------->long---------->float------>double
char---->int
根据码表将当前字符对应的编号转为int类型的值
byte a = 3;
short b = a;
int c = b;
long d = c;
System.out.println(d);//3
char c1 = 'a';
int i = c1;
System.out.println(i);//97
强制类型转换
格式 :
(type)数值或变量
int a = 18;
byte b = (byte) a;
System.out.println(b);
强转原理 :
根据强转之后的类型,从原类型最低位开始截取相应的长度
注意:
强转需要谨慎使用,可能会出现意外的结果
浮点型强转为整型 直接舍弃小数模式
int a = 129;
byte b = (byte) a;
System.out.println(b);//-127
double a = 3.9;
int i = (int) a;
System.out.println(i);//3
总结 :
1*字面值
分类 : 数值型 字符型 字符串型 布尔型
2*变量
概念 格式 使用 注意
3*常量
概念 格式 使用 注意
4*Java数据类型
基本数据类型
八大基本数据类型
引用数据类型
5*数据类型的转换
自动转换
强制转换