===========================第 一 天===============================
一、标识符
类名称 :大驼峰式
方法、变量名称 :小驼峰式
-----------------------------------------------
二、常量
1、字符串常量: "xxxxx"
2、整形常量:100、200、300
3、浮点数常量:3.14
4、字符常量:‘x’【PS:‘’之间有且仅有一个】
5、布尔常量:true、false
6、空常量:null PS:不能直接打印
--------------------------------------------------------------------------
三、基本数据类型(4类8种) 其他为引用数据类型(字符串、数组、类、接口、Lambda)
1、整数型 byte 【PS:范围-128-127】、short、【int】(103)、long(103L)
2、浮点型 float(3.14F)、【double】(3.14) 【PS:可能非精确值】
3、字符型 char 【范围:65535】 2字节 字节数不一定和数据范围有关系
4、布尔型 boolean 1字节
---------------------------------------------------------------------------------
四、定义变量的格式
1、数据类型 变量名称; 2、数据类型 变量名称 = 数据值;
变量名称 = 数据值;
-----------------------------------------------------------------------------
1、变量必须赋值,否则不能使用 【作用域】:从定义变量的一行开始,一直到【直接所属】的大括号结束。
2、变量使用不能超过作用域的范围 3、不推荐一个语句定义多个变量
===========================第 二 天===============================
一、数据类型转换
自动(隐式): 强制(显式):【不推荐使用】
1、自动完成 1、不能自动完成
2、数据范围从小到大 2、范围小的类型 范围小的变量名 = (范围小的类型)原本范围大的数据
'0':48 ASCII 3、会有精度损失
'A':65 4、可能数据溢出
'a': 97 【5、byte short char 使用“+”( 使用数学运算 ) 会自动变int】
【char可以直接比较大小】
PS1:对于byte short char 如果右侧数值没有超过左侧范围,javac编译器自动隐含补上(byte)(short)(char),
超过了报错。
PS2:右侧【都是】常量,会先将常量先计算,将得到的值直接赋值(判断是否超过数值类型范围)。编译器的优化
EX:byte a = 10+12;true
-----------------------------------------------------------------------------------
二、运算符
1、取模只对整数相除起作用 ;2、 自增自减:只有变量 ;3、 a++和++a:【++在前,先运算;++在后,后运算】
4、赋值运算符只有变量能用 ;5、【复合赋值运算符隐含强制类型转换】
比较运算符:
返回值都是boolean,=是赋值运算符 【==是比较运算符】
逻辑运算符:
与 && 全真为真,一假则假 【短路】 第一个为假不执行后面
或 || 全假为假,一真则真 【短路】 第一个为真不执行后面
非 ! 取反
一元运算符
! ++ --
二元运算符
+ - =...
三元运算符
数据类型 变量名称 = 条件判断 ? 表达式A:表达式B;
EX:int max = a > b ? a : b ;【a,b都是int】
执行流程:先进行条件判断,如果满足,返回表达式A,否则返回表达式B
【返回值必须被使用;表达式数据类型】
-----------------------------------------------------------------------------------
方法
格式:public static void 方法名称(){
方法体
}
调用格式: 方法名称();
【PS:1、方法必须调用才会运行;2、定义方法不能嵌套、3、方法定义顺序无所谓】
===========================第 三 天===============================
流程控制
选择:条件表达式为true,语句体执行
1、if(条件表达式){ 2、if(条件表达式){ 3、if(条件表达式1){
语句体 语句体1 语句体1
}... }else{ }else if(条件表达式2){
语句体2 语句体2
}... }else{
语句体3
【三元运算符可替代】 }...
二中只能选一 n中只能选一
---------------------------------------------------------------------------------------------------------
switch(表达式){ 1、 只能是基本数据类型:byte、short、char、 int 引用:String(1.7之后)、enum枚举
case 常量值1: 2、多个case后面的数值不能重复。
语句体1; 3、前后顺序可以颠倒
break;
case 常量值2:
语句体2;
break; 匹配哪一个case就从那个位置开始,一直向下运行,直到遇到break或者整体结束
...
case 常量值n:
语句体n;
break;
default:
语句体n+1;
break; 最后一个break可以省略,【但不推荐省略】
}
--------------------------------------------------------------------------------------------------------------
循环
组成部分: (1)初始化语句,循环初始,只执行一次 (2)条件判断,布尔表达式 (3)循环体 (4)步进语句,扫尾工作
以for循环为例 (1)i=0(2)i<100 (3)System.out.println(i) (4)i++
for(i=0;i<100;i++) { System.out.println(i); }
while循环: do-while循环:
初始化语句 初始化语句
while(条件判断){ do{
循环体; 循环体;
步进语句; 步进语句;
} }while(条件判断)【;】
标准格式 删除 初始化语句、步进语句
----------------------------------------------------------------------------------------
for、while、do-while循环区别:
1、条件从未满足过,for、while执行0次;do-while循环执行1次
2、for循环的变量在小括号中定义,只有循环内部可以使用
---------------------------------------------------------------------------------------
break
用在switch语句中,一旦执行,整个switch立刻结束;用在循环语句中,一旦执行,中断整个循环
continue
用在循环中,一旦执行,跳过当前循环,执行下一次循环
------------------------------------------------------------------------------------------
死循环
永远停不下来的循环
标准格式
while(true){
循环体
}
|
|