1 关键字 标识符 基本数据类型
感觉和C没啥区别
1.1 关键字
public、static、void…
1.2 标识符
①不能用关键字
②由字母、数字、下划线、$组成,但是不能以数字开头
③给变量起名字的时候要起有意义的名字:“见名知意”
1.3 数据类型转换
①从小到大自动类型转换
②从大到小需要强制类型转换,可能会丢失精度(装水的杯子大小不一样)
byte -> short(char) -> int -> long -> float -> double
(4bit)-> (8bit) ->(16bit)->(64bit)->(32bit)->(64bit)
float f = 3.14f;//python好像也这么定义
嗯,死去的计组知识突然攻击我,一句话,位数决定表达个数,但不完全决定表达范围(还取决于是否是浮点数,小数点能不能动)
ascii码 大小写 ‘a’ 97 'A’65
2 运算符
2.1 基本运算符: + - * / %
2.2 单目运算符: ++ –
//i++是先运算再赋值 ++i是先运算再赋值
int i = 1;
i++;
System.out.println(i++);//2
System.out.println(i);//3
System.out.println(++i);//4
2.3 比较运算符: 比较之后的结果只有两种情况:true、false,属于boolean类型
2.4 逻辑运算符: 结果只有两种情况:true、false,属于boolean类型
还有个短路
//短路
int num1 = 3;
int num2 = 5;
//&&短路
System.out.println(num1 < 0 && num1++ < num2);//false
System.out.println(num1);//3
System.out.println(num2);//5
//||短路
System.out.println(num1 > 0 || num1++ < num2);//false
System.out.println(num1);//3
System.out.println(num2);//5
//&不短路
System.out.println(num1 < 0 & num1++ < num2);//false
System.out.println(num1);//4
System.out.println(num2);//5
3 条件分支语句
3.1 if-else: 跟C一样
3.2 三目运算符: 语法:boolean ? 数1 : 数2
3.3 +号运算符: 拼接字符串的,好方便
@Test
public void test7(){
int age = 25;
//逗逗加加
System.out.println("I am 22 years old.");
System.out.println("I am " + age + " years old.");
String str1 = "我的年龄是22岁";
String str2 = "";//空字符串
System.out.println(10 + 20 + "" + 30);//"3030"
System.out.println("" + 10 + 20 + 30);//"102030"
}
4 循环控制语句
4.1 while、for
循环的三要素:
①循环条件的初始化
②循环条件的控制
③循环条件的改变
忽然大一的时候崔老师说的的ICBC:Initialize(条件初始化) Control(条件控制) Body(循环体) Change(条件改变)
while、for循环主要是两类题目:
①累加思想(1+2+3+… + 100)
②统计思想,数一下符合条件的有多少个(计算1-100以内7的倍数的个数)
4.2 continue、break
4.3 双重for循环