Scanner:
键盘录入:数据改为键盘录入,可提高程序的灵活性。
键盘录入格式:
1、导包:import java.util,Scanner; (导包放在首个class语句上面)
2、创建对象:Scanner sc=new Scanner(System.in);
3、接受数据:int i=sc.nextInt();(输入不同类型的数据,用不同格式)
顺序结构:
顺序结构是程序中最简单最基本的流程控制,没有特定的语法结构,按照代码的先后顺序,依次执行。
选择结构:
选择结构分为两大类:if,switch
if:
if语句的格式:
1. if(关系表达式){ //判断关系表达式里的结果值,结果为boolean类型的
语句体; //关系表达式的结果是true,就进入if的大括号内,执行语句体
}
2. if(关系表达式){ //如果关系表达式的结果是true,那么就执行语句体1,不执行else语句
语句体1; //如果关系表达式的结果是false,那么就执行else里面的语句体2
}else{
语句体2;
}
3. if(关系表达式){
语句体;
}else if(关系表达式){
语句体;
}
....
else{
语句体;
}
三目运算符与if第二种格式的互相转换,若为输出为语句,就无法用三目运算符;若输出为值可以转换。
if语句可以相互嵌套。
switch:
switch语句格式:
switch(表达式){
case 值1: 语句体1;
break;
case 值2: 语句体2;
break;
....
default:语句体n;
break;
}
表达式的取值: byte,short,int,char;JDK5后可以枚举,JDK7之后以String类型
case 后面的值是要和表达式进行比较的值,如果匹配到对应的case值,那么就执行相应的语句体,语句体可以是一条语句或者多条语句。case标签的值不能有重复的。
break 表示中断,结束的意思,它的作用是结束switch语句
default 这个语句表示所有的情况都不匹配,就执行这里面的语句体内容,和if-else最后的那个else相似
循环结构:
循环结构分为:for、while、do while
for:
for循环语句格式:
for(初始化语句;判断条件语句;控制条件语句) {
循环体语句;
}
//判断条件语句的结果必须是一个boolean类型的;初始化语句可以不写在for循环中;判断语句不能省略,否则就是死循环;控制条件语句可以不放在for循环的括号内,但是必须在语句体中发生变化
执行流程:A:执行初始化语句;B:执行判断条件语句,看其结果是true还是false如果是false,循环结束。如果是true,继续执行。C:执行循环体语句;D:执行控制条件语句;E:回到B继续。
while:
while循环语句格式:
基本格式:
while(判断条件语句) {
循环体语句;
}
扩展格式:
初始化语句;
while(判断条件语句) {
循环体语句;
控制条件语句;
}
for循环和while的区别,在知道循环次数时使用for循环,反之用while。
do...while循环:
基本格式:
do {
循环体语句;
}while((判断条件语句);
扩展格式:
初始化语句;
do {
循环体语句;
控制条件语句;
} while(判断条件语句);
do...while会先执行一遍循环体内容再进行while判断。