java 流程控制语句(选择语句) 循环语句 Scanner简单地方法
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java 流程控制语句(选择语句) 循环语句 Scanner简单地方法,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含11117字,纯文字阅读大概需要16分钟。
内容图文
![java 流程控制语句(选择语句) 循环语句 Scanner简单地方法](/upload/InfoBanner/zyjiaocheng/622/a85a39dab5be456081d44c2f07835e11.jpg)
流程控制:(选择语句)
顺序结构:
程序是从上往下进行加载,按照代码的编写顺序进行执行.
选择结构(分支结构):
if else 语句
1.if 单只情况
if语句的格式:
if(布尔类型表达式/布尔类型值){
//语句体......
}
if语句(单只)的执行流程:
首先判断布尔类型表达式 看结果是false还是true
如果是true就执行{}里面的方法体内容
如果是false就不执行{}里面的方法体内容,程序往后加载
2.if else双支情形
格式:
if(布尔类型表达式){
//语句体内容1;
}else{
//语句体内容2;
}
if else双支的执行流程:
首先判断布尔类型表达式 看结果是false还是true
如果是true就执行语句体1
如果是false就执行语句体2
3.if...else...if...else
格式:
if(布尔类型表达式1){
//方法体内容1...
}else if(布尔类型表达式2){
//方法体内容2
}else if(布尔类型表达式n){
//方法体内容n
}else{
//方法体内容n+1
}
if else if多支的执行流程:
首先判断布尔类型表达式1 看结果是false还是true
如果是true就执行语句体1
如果是false就继续判断布尔表达式2 看结果是false还是true
如果是true就执行语句体2
如果是false就继续判断布尔表达式n 看结果是false还是true
如果是true就执行语句体n
如果以上所有的布尔类型表达式都为false,最后执行else{}里面的语句体n+1
4.if..if..else..else 嵌套
格式:
if(布尔类型表达式1){
//方法体内容1
...
if(布尔类型表达式2){
//方法体内容2
...
}else{
//方法体内容3
...
}
}else{
//方法体内容4
...
}
执行流程:
首先判断布尔类型表达式1 看结果是false还是true
如果是true就执行语句体1 再继续判断布尔表达式2,看结果是false还是true
如果是true,就执行方法体内容2
如果是false,就执行布尔表达式3...
如果是false,就执行方法体内容4,之后加载后面的程序.
5.if语句和三目运算符的互换
int num01 = 10;
int num02 = 20;
//定义一个变量,保存num01和num02的最大值
int c;
if(num01 > num02){
c = num01;
}else{
c = num02;
}
//上面的语句也可以使用三目运算符
c = num01 > num02 ? num01 : num02;
switch case语句
格式:
switch(表达式/变量){
case 常量值:
//语句体内容1
break;
case 常量值2:
//语句体内容1
break;
......
default:
//语句体内容n
breakl;
}
执行流程:
首先计算出表达式中的值
其次,依次和case后面的常量值做比较,一旦有对应的值,就会执行相应的语句体内容,
在执行的过程中,遇到break就会结束switch case语句.
最后如果所有的case都和表达式的值不匹配就会执行default中的语句体内容,然后switch case语句结束
注意:在switch语句中,表达式的数据类型,可以是byte/short/int/char/enum(枚举),JDK1.7之后可以接收字符串类型.
case 穿透性
在switch语句中如果case后面的break省略掉,将会出现穿透现象.不会判断后面的case情形值,直接向后加载后面的case中的方法体内容,直到遇到break结束
循环结构:【重点】
【三种基本循环】for\while\do-while
循环结构组部分:一般可以分为4部分
1.初始化语句:在循环最开始时,需要定义一个初始化变量,而且只会定义一次
2.条件判断(结束条件):如果条件成立满足,进入循环,如果条件不满足,则退出循环
3.循环体内容:重复要做的事情内容,可能包含很多条语句(事情是有规律的)
4.迭代语句(步进语句)每次循环结束之后需要执行步进语句(迭代语句),对初始化的变量做步进(迭代).
for循环语句结构:找规律
for (1.初始化语句;2.条件判断表达式;4.迭代语句){
//3.循环体内容
}
执行流程:
执行的顺序1--》2--》3--》4--》2---》3---》4---》2---》3---》4.....2(不满足为止)
1.负责循环变量的初始化
2.负责判断是否满足循环条件,不满足退出循环
3.负责执行具体的语句(逻辑功能)
4.负责变量的迭代
初始化语句一定和条件判断表达式紧密结合
迭代语句和条件判断表达式也是紧密结合的
迭代语句是对初始化语句中定义的变量迭代的.
while循环语句
格式:
//1.初始化语句;
while(2.判断条件){
//3.循环体内容
//4.步进语句
}
执行流程:
执行顺序:1---》2---》3---》4---》2---》3---》4---》......2不满足为止
1.负责循环变量的初始化
2.负责判断是否满足循环条件,不满足退出循环
3.负责执行具体的语句(逻辑功能)实现某个功能
4.负责变量的迭代(循环变量)
do-while循环
格式:
//1.初始化语句
do{
//3.循环体内容
//4.迭代语句
}while(2.判断条件);
执行流程:
执行顺序:1---》3---》4---》2---》3---》4---》2---》......2不满足为止
1.负责定义循环变量,并且初始化
2.负责判断是否满足循环条件,不满足退出循环
3.负责执行具体的语句(逻辑功能)实现某个功能
4.负责变量的迭代(循环变量)
备注:他会无条件执行一次循环体内容,即使判断条件不满足也依然会循环一次,这样的循环是有风险的,不建议使用.
循环语句的区别:
for和while的区别:
控制语句中所涉及到的循环变量,当for循环结束后,定义的循环变量,不能再被访问到,
而while循环结束后依然可以被访问到.如果不继续使用循环变量,建议使用for循环,
因为for循环结束后,循环变量就会从内存中消失,能够提高内存的使用效率.
在已知循环次数的情况下,建议使用for循环,当循环次数不确定时使用while循环.
跳出语句:
break、continue两个语句
break:
使用情形:
终止switch或者循环语句;
备注:
离开了使用场景对于break来说没有意义.
public static void main(String[] args){
//使用break语句
//跳出循环
//10以内偶数和
int sum = 0;
for(int i = 0; i <= 100; i++){
//跳出情形
if(i > 10){
break;
}
if(i % 2 == 0){
sum+=i;
}
}
}
//跳出switch case语句
//季节 四个季节
String season = "春季";
switch(season){
case "春季":
System.out.println("万物复苏的时候");
break;
case "夏季":
System.out.println("夏日炎炎的时候");
break;
case "秋季":
System.out.println("丰收的时候");
break;
case "冬季":
System.out.println("寒冷下雪的时候");
break;
default:
System.out.println("跳出三界外,不在五行中");
break;
}
continue:
使用情形:结束本次循环,继续下一次循环
public static void main(String[] args){
//continue
//求一下100以内的偶数和 2+4+6+8+10+12+......+100;
int sum = 0;
for(int i = 1; i <=100; i++){
//使用场景 奇数跳过去不参与累加和
if(i % 2 != 0){
continue;
}
sum += i;
}
System.out.println(sum);
}
扩展知识点:
1.死循环
概念:循环中条件永远都是true,死循环是永不结束的循环. 例如:while(true){}
死循环一般要和跳出语句结合.
2.循环嵌套
概念:是指一个循环的循环体是另一个循环.比如说for循环中内置了一个for循环,就是循环嵌套
循环的次数 = 外部循环的次数 * 内部循环的次数
格式:
for(1.初始化语句;2.判断语句;4.迭代语句){
//3.循环体内容
for(5.初始化语句;6.判断语句;8.迭代语句){
//7.循环体内容
}
}
执行流程:1 2 3 5 6 7 8 6 7 8 6 7 8...6不满足为止(跳出循环内层循环)
4 2 3 5 6 7 8 6 7 8 6 7 8...6不满足为止(跳出循环内层循环)
----》2不满足为止(结束整个循环),加载外层for循环后面的语句.
外循环一次,内循环多次
public static void main(String[] args){
//使用场景
//打印3*8的长方形 长为3,宽为8
/*
********
********
********
*/
//使用循环嵌套来实现
//外循环3次、内循环8次
public static void main(String[] args){
for (int i = 0; i < 3; i++){
for(int j = 0; j < 8; j++){
//输出* println("*")--->先打印内容在换行
System.out.print("*");
}
System.out.println();//只换行不输出内容
}
}
}
Scanner类和Random类的使用
API(Application Programming interf)应用程序编程接口,javaAPI就是程序员的一本字典
是JDK中提供给我们使用类的说明文档。只需要查阅API搜索自己需要的类.
Scanner类
他是一个可以解析基本数据类型和字符串的文本扫描器.主要作用就是把外部的数据录入到系统中
Scanner sc = new Scanner(System.in);
//让系统能够从外部录入一个整数 nextInt();
int num = sc.nextInt();
//备注:System.in 可以实现通过键盘往系统中录入一个数据.
//让系统能够从外部录入一个浮点数(小数)nextDouble()
double num02 = sc.nextDouble();
//让系统能够从外部录入一个字符串数据 next()
String str = sc.next();
内容总结
以上是互联网集市为您收集整理的java 流程控制语句(选择语句) 循环语句 Scanner简单地方法全部内容,希望文章能够帮你解决java 流程控制语句(选择语句) 循环语句 Scanner简单地方法所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。