Java基础语法-选择分支

一、Scanner(扫描仪)

Scanner使用:
System.out.println(“请从控制台输入”);
java.util.Scanner s = new java.util.Scanner(System.in);
int n = s.nextInt();//从控制台输入一个整数。
double d = s.nextDouble();//从控制台输入一个double类型的数。
String ss = s.next();//从控制台输入一个字符串类型的值。
char c = s.next().charAt(0);//从控制台输入一个字符串获取第一个字符。
注意:当输入的类型和要求的类型不匹配会报如下错误
在这里插入图片描述
注意:java.util.Scanner是全限定名 java.util是包结构。

二、import
导包 :在package的下面可以使用import 类的全限定名;代表的是导入包结构。一旦导包之后,那么在使用类的时候就不需要写包名。
:通配符 代表的是所有。
import java.util.
;代表的是将来使用java.util包下面的所有类的时候都不需要进行导包。
注意:使用到java.lang包下的类的时候不需要导包。

三、选择分支流程
a) 概念:通过需要判断一定的条件,如果满足条件,则执行相应的代码,如果不满足则执行其他代码。

b)分类:

i.基本选择结构
1.if基本结构
a)语法

if(逻辑判断 布尔表达式){
//代码块
}
//后续代码

b)执行流程:
首先会对布尔表达式进行判断,如果结果为true,则执行代码块,再执行 后续代码;如果布尔表达式的结果为false,则直接执行后续代码。

注意:在程序中if结构可以出现多次。 会分别对每一个if中的布尔表达式进行判断,如果结果为真,则都执行。

2.if-else结构

a)语法
if(布尔表达式){
//代码块1
} else{
//代码块2
}
//后续代码

b) 执行流程:
首先对布尔表达式进行判断,如果为true,则执行代码块1,然后执行后续代码;如果为false,则执行代码块2,然后执行后续代码。
注意:if和else中的代码块不能同时执行。
问题:当逻辑判断比较比较多的时候,if结构和if-else结构不能满足要求或者执行效率低。

ii.if-else if结构:

1.语法
if(布尔表达式1){
//代码块1
} else if(布尔表达式2){
//代码块2
}else if(布尔表达式3){
//代码块3
}….else{
//代码块n
}

2.执行流程:
如果哪个布尔表达式的结果为true,则执行{}里面的代码,其他布尔表达式不再进行判断。

3.注意:
else{}可以省略。如果省略,则会判断布尔表达式的结果,为true,执行{}的代码,接着执行后续代码;如果布尔表达式的结果为false,则直接执行后续代码。

iii.if的嵌套

1.语法
if(布尔表达式1){
if(布尔表达式2){
//代码块2
}else{
//代码块n
}
}else{
if(){
}
}
2. 执行流程:首先会判断外层的布尔表达式,如果表达式的结果为true,才会进入到内部,对内部的布尔表达式进行判断。

c) switch-case分支结构

i.语法
switch(变量){
case 值1:代码块1;
case 值2:代码块2;
……
case 值n:代码块n;
}

所表示的含义是:
变量与case后面的值进行匹配,如果匹配上了则执行后面的代码块的内容。

ii.注意:
1.switch()只能出现byte,short,int,char,JDK1.7之后可以出现String。
2.break关键字:跳出switch结构,在case代码块的末尾使用。
3.default关键字:默认的 ,当switch结构中的变量与case后面的值都没有匹配上,则执行的是default后面的语句。
default语句没有先后顺序;
default出现在switch结构的末尾处,可以省略break关键字。当default语句出现在开头时,break不能省略。
4.case后面不能够出现重复的值。
case后面的代码块可以出现相同的,但是存在冗余,可以将case后面的语句删除。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值