定义:被Java语言赋予了特殊的含义,用作专门用途的字符串
特点:关键字中所有字母都为小写
保留字goto、const 也要避开使用
标识符定义:凡是我们自己可以起名字的地方都叫标识符
比如:类名、变量名、包名、函数名、接口名
标识符的命名规则:1.必须在26个字母、数组0到9、_和$
2.名字之间不能包含空格
3.不能使用关键字保留字,可以包含关键字或保留字
4.java严格遵守大小写,长度无限制
5.数字不可以开头
java中的命名规范包名:多单词组成时全部小写,如xxxxyyyzzz
类名、接口名:多单词组成时首字母大写,如XxxYxxZzz
变量名、方法名:多单词组成时后一个首字母大写,如xxxYyy
常量名:全部首字母大写,如XXX_YYY_ZZZ
注意1:在起名字时候好好想想,要见名知意,别瞎起名字
注意2:java采用unicode字符集,因此标识符也可以用汉字声名(但是给狗狗都不用!!!!)
变量变量由变量名、数据类型、变量值
两种定义方法
int a; a=100;
int a=100;
说明1.先声明后使用
2.变量都定义在作用域中,在作用域中,它是有效的。换句话说,出了作用域它将是无效的。
3.在同一个作用域中,不允许定义两个同名的变量
变量分类一、变量按照数据类型可分
1.基本数据类型
-
整型:byte/short/int/long
byte(1个字节8个bit 范围-128~127)
short(2个字节)
int(4个字节) 最常用
long(8个字节 定义之后要在值结尾添加‘l’或’L’)
-
浮点型:float/double
float(4个字节,表示的数值范围比long大 ,单精度,使用时要在值的末尾添加‘F’或’f’)
double(8个字节,最常用)
-
布尔型:boolean
只能去true或false
通常在条件判断、循环语句中使用
-
字符型:char
char(1个字符2个字节)
用单引号‘ ’ ,只能表示单个字符,如char a=‘ab’;//编译不通过
转义字符:n 换行符 t 制表符
直接使用Unicode值来表示字符型常量(不常用了解即可)
我们以后都是使用utf-8 ,命令行默认GDK
2.可用数据类型
- 接口(interface)
- 类(class)
- 数组(array)
二、变量在类中声明的位置
成员变量 vs 局部变量
三、基本数据类型间的运算规则
前提:这里只讨论7种基本数据类型变量间的运算。不包含boolean类型的
-
自动类型提升
当容量小的数据类型与容量大的数据类型做运算时,结果自动提升为容量大的数据类型
short char byte 三者之间运算或者与自身同数据类型运算,结果都将提升为int数据结构
short char byte—int—long–float—double
-
强制类型转换
自动类型提升的逆运算
1.需要使用强转符:()
2.注意点:强制类型转换,可能造成精度损失
精度损失案例一
强制类型转换会直接截断不会四舍五入
double a = 123.9;
int b = (int) a;
结果为:123
精度损失案例二
int i=128;
byte y = (byte) i;
结果为:-128 (后面二进制转换再仔细研究)
整型常量,默认类型为int型
浮点型常量,默认类型为double
-
情况一
long b = 1021;
编译不会报错,因为1021为整型变量,为int类型并且长度符合int所以不会有异常
-
情况二
long b = 102411256161651651;
编译会报错,因为102411256161651651超出int类型长度,在末尾加上L就可以了,代表为long类型
-
情况三
float a = 123.4;
编译直接报错,因为浮点型变量默认为double,float无法接受,解决办法有两种 1.强制类型转换 2.在末尾加上F证明为float类型
- String属于引用数据类型,翻译为:字符串
- 声明String类型变量时,使用一对双引号 “”
- String类型变量可以与8种数据类型来做“+”,连接运算
- 运算结果仍然为String类型
运算顺序为从左向右来进行运算的
只有与String类型相加才为连接运算,其余数据类型都不会进行连接运算
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OR7KsyTe-1656921066923)(https://cdn.jsdelivr.net/gh/gaoyoudao/Picture/img/image-20220703165655241.png)]
禁止转换,逢几进制中的几进一
二进制变量赋值表示用0b
八进制用0
十六进制用0x
结果为:
num1 = 6
num2 = 110
num3 = 64+16+7=87
num4 = 4096 + 256 + 0 + 10=4326
二进制到十进制的转换
已知补码求原码 ,除去符号位,先减一再取反
十进制转二进制:除2取余逆



