Java语言基础
1.标识符
(1)什么是标识符?
Java源程序中自己命名的单词
黑色字体高亮显示
可以标识:类名,方法名,变量名,接口名,常量名…
(2)命名规则(不按照这个规则来会编译器报错,这是语法)
i.只能由”数字、字母、下划线_、美元符号$"组成,不能有其他符号(空格不行)
ii.不能以数字开头
iii.关键字不能做标识符
iv.严格区别大小写
v.理论上无长度限制,最好不要太长
(3)常见命名规范(只是一种规范,不按照编译器不会报错)
最好见名知意
遵守驼峰命名法
名称 | 特点 | 例子 |
---|---|---|
类名,接口名 | 首字母大写,后面每个单词首字母大写 | HelloWorld |
变量名、方法名 | 首字母小写,后面每个单词首字母大写 | sumTest |
常量名 | 全部大写 | MAX |
合法标识符 | 不合法标识符 |
---|---|
_123Test | 123Test |
HelloWorld | Hello-World |
HelloWorld | HelloWorld# |
public1 | public |
HelloWorld | Hello World |
常见的关键字
2.字面值
(1)什么是字面值?
字面值就是数据
字面值 | 例子 |
---|---|
整数型字面值 | 10 100 |
浮点型字面值 | 3.14 |
布尔型字面值 | true false |
字符串型字面值 | “abc” “中国” |
字符型字面值 | ‘A’ ‘b’ |
3.变量
(1)本质:内存中一块空间,空间中有三部分:数据类型,名称,字面值(数据)
内存中存储数据的最基本的单元
(2)数据类型的作用
不同数据→不同类型→分配不同大小空间
(3)变量要求
存储具体的“数据”,必须和“数据类型”一致
(4)定义变量的语法格式
数据类型 变量名
(5)变量声明后怎么赋值
格式:变量名=字面值
要求:字面值数据类型与变量数据类型一致
“=” 赋值运算符
(6)可重复赋值
int i = 1;
i = 2;
i = 3;
(7)访问变量
两种形式:读取 修改
(8)一行可声明多个变量
int a b c;
(9)变量先声明,再赋值,才能访问
(10)变量的作用域
变量的有效范围 出了大括号就不认识
4.数据类型
数据类型 | 字节数(byte) | |
---|---|---|
整数型 | byte short int long | 1 2 4 8 |
浮点型 | float double | 4 8 |
布尔型 | boolean | 1 |
字符型 | char | 2 |
字节:
1 Byte=8 bit(1个字节=8个比特位)1个比特位表示一个二进制位:1/0
1 KB = 1024 Byte
1 MB = 1024 KB
1 GB = 1024 MB
1 TB = 1024 GB
1 TB = 1024 * 1024 * 1024 * 1024 * 8
转义字符 | \ |
---|---|
换行符 | \n |
制表符(一堆空格) | \t |
普通斜杠字符 | \\ |
单引号 | \’ |
制表符与空格的区别:ASCALL码不同
需要记住的ascall码:‘a’ = 97 ‘A’ = 65 ‘0’ = 48
System.out.print(); //输出不换行
System.out.println(); //输出不换行
char k ="a"; //类型错误
float a = 3.14f; //浮点型默认是double类型,float类型要在后面+f
long b = 213l; //整数型默认int,被当作Long型处理,需在后面+l
类型转换
小容量自动转成大容量
大容量转小容量需要强制类型转换(可能损失精度)
容量大小:boolean 不能类型转换
byte<short<int<long<float<double
<char<
注意:
i.任何浮点型不管多少字节,都比整数容量大
ii.char与short可表示种类数量相同,但char可取更大正整数
iii.byte short char 混合运算时,各自先转int再算
iv.字面值未超过byte short char范围,可直接赋值
v.多类型计算,先转换成容量大的再算
5.运算符
算术运算符: + - * / % ++ - -
关系运算符:> < >= <= == !=(不等于)
关系运算符的运算结果一定是布尔类型:true/false
逻辑运算符:
符号 | 名字 | 规则 |
---|---|---|
& | 与 | 两边都是true,才是true |
I | 或 | 一个是true,都是true |
! | 非 | 取反,!false是true |
^ | 异或 | 两边不一样就是true |
&& | 短路与 | |
II | 短路或 |
短路现象:后面表达式没有在执行
赋值运算符:
基本:=
扩展:+= -= *= /= %=
先执行等号右边,再赋值
扩展的赋值运算符会不改变运算结果类型(强制类型转换)
6.三元运算符
格式: 布尔表达式?表达式1:表达式2
不是java语句,不用写“;”
法则:若结果为true,则执行表达式1,若结果为false,则执行表达式2
int a b;
System.out.println(a > b ?a:b);//如果a>b是正确,则输出结果为a,如果a>b是错误,则输出结果为b