选择结构
接收用户键盘输入
固定代码:
//创建键盘扫描器对象
//第一步
java.util.Scanner s = new java.util.Scanner(System.in)
//第二步
//程序执行到这里会停下来等待用户输入
//输入值并敲回车,信息就会自动赋值给userInputContent
//程序执行到这里,用户输入的信息已经在内存中了
//接受文本【以字符串形式接收】
String userInputContent - s.next();
//接收数字
int num = s.nextInt();
//
System.out.println("您输入了:" + userInputContent);
}
if、if else
对于if语句,只要有一个分支执行,整个if语句全部结束
if有四种编写方式:
第一种:
if(布尔表达式【如果是true执行语句】){
java语句;
}
第二种
if(布尔表达式【如果是flase执行else】){
Java语句;
}else{
java表达式
}
第三种:
if(布尔表达式){
java语句;
}else if(布尔表达式){
java语句;
}else if(布尔表达式){
java语句;
}else if(布尔表达式){
java语句;
}else if(布尔表达式){
java语句;
}……
第四种:
if(布尔表达式){
java语句;
}else if(布尔表达式){
java语句;
}else if(布尔表达式){
java语句;
}else if(布尔表达式){
java语句;
}else (布尔表达式){
java语句;
}
第二种和第四种带else,保证会有分支执行
所有的控制语句都是可以嵌套使用的,只要合理【要保证代码格式完美,缩进不能省略】
switch
//语法结构
switch(int或String类型的字面值或变量){
//case后面数据匹配成功的数据的分支执行,匹配成功执行
//switch和case后面只能是int或String,不能是其他;
//不过如果是byte、short、char也可以直接写,因为会自动转换类型
case int或String类型的字面值或变量:
java语句;
java语句;
//分支中有break,匹配成功,执行分支后语句中止
//分支中没有break,执行分支后继续执行下一个case分支,不用额外配对
break;
case int或String类型的字面值或变量:
java语句;
java语句;
break;
case int或String类型的字面值或变量:
java语句;
java语句;
break;
case int或String类型的字面值或变量:
java语句;
java语句;
break;
//如果case匹配不上,执行default
default:
java语句;
}
//case可以合并
int i =1;
switch(i){
case 1: case 2: case 3: case 500:
System.out.println("Hello,world!");
}
循环结构
for
语法结构
for(初始化表达式; 布尔表达式; 更新表达式 //这三个表达式都不是必须的,可以存在不写的情况,但是两个分号是必须的){
//循环体(重复执行的代码片段)
}
for循环原理(布尔表达式 --> 循环体 --> 更新表达式)
1、初始化表达式最先执行,且只执行一次
2、- 先执行初始化表达式
- 判断布尔表达式结果
- 结果是true
执行循环体
执行更新表达式
判断布尔表达式结果
true
执行循环体
执行更新表达式
判断布尔表达式结果
……
- 结果是flase
退出循环
循环中的变量会在离开作用域后释放,因此只作用于本循环
while
while(布尔表达式){
循环体;
}
1、编译器只认语法,所以如果布尔表达式恒为true,则判定为死循环;
如果布尔表达式为i > j(变量i的赋值永远大于j)时,不会判定
编译器只检测语法,不检测变量的值
int j =10
while( j > 0 ){
System.out.println(j–) //10…1
System.out.println(j) //9…0
}
System.out.println(j) // 0
do while
do{
循环体;
}while(布尔表达式); //最少执行一次
控制循环的语句
break
1、java语言当中的关键字,被译为“中断”
2、break; 可以称为单独的java语句
3、用在switch终止语句执行
4、可用在循环语句,终止
5、默认下,break中断最近的语句
6、要终止远的语句,需要给循环起名
A: for(){
B:for(){
break A;
}
}
continue
1、表示继续
2、可以直接表示为continue; 用于循环语句中控制循环进行
3、continue和break的区别
1、break跳出这个循环
2、continue不管之后的语句,直接进行下一次循环
4、continue也可以指定循环位置: continue 循环名称;