变量
定义:在程序运行过程中,可以改变的量叫变量
语法格式:
数据类型 变量的名字 = 初始化的值;
数据类型:用来约束当前变量的类型的
变量的名字:就是自己起的名字。可以随便起吗?不可以
=:赋值号
初始化的值:第一次赋的值
数据类型
整型(4个):整数 byte short int long
浮点(2个):小数 float double
字符(1个):char
布尔(1个):
请添加图片描述
变量名字的命名规则
类的命名:
1.首字母大写
2.采用大驼峰的命名规则 由两个单词组成的,这两个单词的首字母都大写 HelloWorld
变量的命名:
1.变量首字母小写
2.变量可以使用字母,数字,下划线命名,但是不能以数字开头
3.采用的是小驼峰的命名规则【如果变量的名字是两个单词拼接起来的,首个单词小写,另外一个单词首字母大写】
4.命名 的时候一定要见名知意,看见英文意思就知道当前变量是什么意思了
5.已经被java或者系统所占用的关键字,咱们是不能起变量名字
转义字符
目的:把一个有特殊意义的字符转为无意义的字符或者把一个无意义的字符转为有特殊意义的字符
语法格式:\需要转义的字符
几个特殊的符号:\n:回车换行 \t:制表符 空格
运算符
算术运算符
数学中的 + - * / (整除) %(取余),先乘除后加减,先算小括号里面的,然后再算小括号外面面的,原则是从左向右进行执行
关系运算符
(是否大于) <(是否小于) >=(是否大于等于) <=(是否小于等于) !=(是否不等于) == (是否等于)
关系运算符的返回的结果必须是一个布尔类型的数据
逻辑运算符
与: &&
语法格式: 条件1 && 条件2 && …
条件的返回值必须是布尔类型的数据
条件1和条件2都为true的时候整体的结果返回的是true。条件1和条件2只要一个为false就整体false
银行里面的保险柜钥匙和密码
或:||
语法格式: 条件1 || 条件2 || …
条件的返回值必须是布尔类型的数据
条件1和条件2都为false的时候才为false,只要一个为true就为true
宿舍里面的钥匙:你拿一把,亲室友拿一把。 你的丢了。你室友可以开。除非两个都丢了
非: !
语法格式:!条件
取反
逻辑运算符的断路原则
逻辑与的断路原则:
条件1 && 条件2&&条件3…
如果条件1为false的话,整体就为false。那么条件2和条件3就不执行了
逻辑或的断路原则:
条件1 || 条件2||条件3…
如果条件为true的话,整体就为true。那么后面的条件就不再执行了
分支结构
if 分支
语法格式:
if (条件) {
语句体
}
条件的返回值必须是布尔类型的数据
执行流程:如果条件为true,就会执行大括号里面的语句体。如果条件为false,跳过大括号去执行下面的代码
if-else 分支
语法格式:
if (条件) {
语句体1
} else {
语句体2
}
执行流程:如果条件为true的话吗,执行语句体1跳过else后面大括号的语句体2 ,往下执行。
如果条件为false的话,跳过语句体1去执行语句体2。二者只选择其一
if-else if()分支
语法格式
if (条件1) {
语句体1
} else if (条件2) {
语句体2
} else if (条件3) {
语句体3
} else {
语句体
}
执行流程:如果条件1位true 执行语句体1,其他不执行。,一定要注意一句话。只要遇到条件为true就执行当前条件后面的与语句体。
跳过后面的额语句,执行非if-else语句
switch-case 分支
switch (表达式) {
case 常量1:
语句体1;
break;
case 常量2:
语句体2;
break;
case 常量3:
语句体3;
break;
…
default:
语句体n;
break;
}
执行流程:switch后面有个小括号,小括号里面是表达式,会产生一个值,这个值会和下面的case常量做匹配。如果匹配到就执行当前的语句体
在这里插入图片描述
循环结构
while循环
语法格式:
while (条件) {
语句体
}
执行流程:代码执行到while以后,首先判断while后面小括号里面的那个条件,如果条件为true 执行大括号里面的语句体。再次回到while关
键字,再次判断小括号里面的条件,如果条件为true执行语句体再次回到while 关键字,再次判断小括号里面的条件,如果为true就再次执行
如果为false 就结束循环
do-while 循环
语法格式:
do {
语句体
}while (条件);
执行流程:代码先找do关键字 就会执行大括号里面的语句体。然后才去判断while后面的条件,条件如果为true的话,回到do 再次执行语句体。再次判断条件…循环下去,直到条件为false,循环就结束了
while和do-while区别
while循环先判断条件是否成立,条件不成立,就不执行语句体
do-while 先执行语句体,然后再判断条件是否成立
for循环
语法格式:
for (表达式1;表达式2; 表达式3) {
语句体
}
执行流程:先执行表达式1,再执行表达式2 返回的true或者false 如果true继续往下走,执行语句体,再回到表达式3.在执行表达式2 判断是否true false
嵌套循环(双重foe循环)
语法格式
1
for(表达式1; 表达式2; 表达式3) {
for (表达式1;表达式2;表达式3) {
}
}
三目运算符
语法格式:
表达式 ? 表达式1 : 表达式2;
先判断?前面的表达式,如果表达式为true。执行表达式1。如果表达式为false,执行表达式2.
方法
无参数无返回值的方法
语法格式
public static void 方法名字 () {}
注意事项:
1.方法的声明必须放在main主函数的外部
2.在main主函数中调用自己定义好的方法
3.调用的时候需要方法的名字+小括号即可,用分号结尾即可
4.方法的名字的和变量的命名一样的
5.方法是条狗哪里需要哪里吼 方法声明完以后不执行,要在主函数中调用才执行.
有参数无返回值的方法
语法格式:
public static void 方法名字(数据类型 参数名字, 数据类型 参数名字,…) {}
注意事项:
1.声明的时候,方法有参数,这个参数叫形参
2.在方法的调用处,那个参数叫实参。实参和形参的数据类型必须保持一致
3.有几个形参就传入几个实参
无参数有返回值的方法
无参数有返回值的方法
语法格式:
public static 数据类型 方法名字() {
return 返回的值;//这个返回值必须和上面扥数据类型保持一致
}
return:关键字 返回的意思
【注意事项】
有返回值的方法在调用的时候一定要赋值给一个变量在main主函数中,拿到这个变量做下一步的操作
有参数有返回值的方法
语法格式:
public static 数据类型 方法名字 (数据类型 形参1, 数据类型 形参2,…){
return 返回的值;
}
break和continue的关键字
break
字面意思:终止和打断
public class Demo1 {
public static void main(String[] args) {
//看一下break关键字的
//i = 0 0< 10 true sout(0) break 终止循环
// for (int i = 0; i < 10; i++) {
// System.out.println(i);
// break;
// }
//打印1-100之间 数值,碰到50 往后就不再打印了
for (int i = 1; i < 101; i++) {
System.out.println(i);
if (i == 50) {
break;
}
}
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
continue
字面意思:继续,在循环里面,结束本次循环,进入下次循环
public class Demo2 {
public static void main(String[] args) {
/**
* i = 4 4 <10 true 4%5==0 false sout(4) i++
* i =5 5<10 true 5%5==0 true continue; 结束本次循环
*
* i++
* i = 6 6<10 true 6%5==0 fasle
*/
for (int i = 4; i < 10; i++) {
if (i % 5 == 0) {
//结束本次循环 进入到下一次循环
continue;
}
System.out.println(i);
}
}
}