Java基础(四)
循环
Scanner的使用
Scanner类可以用来接收用户从控制台输入的信息,该类在我们的Java基础阶段会经常使用
用于辅助教学,但在实际工作中基本不用。
public class ScannerDemo{
/*
练习Scanner类
*/
public static void main(String[] args){
/*
1.Scanner scanner 定义个Scanner类型的变量, scanner就是变量名
2.new Scanner(System.in)创建一个Scanner类型的对象(实例)
System.in表示所扫描的信息是我在控制台输入的
3.将这个对象交给scanner来引用
*/
Scanner scanner = new Scanner(System.in) ;
System.out.println("请输入您的名字:") ;
String name = scanner.next();
System.out.println("您的名字是:"+name) ;
}
}
程序的流程
程序的流程分为三大类:
1、 顺序执行:执行完第一之后再执行第二,第三步….
2、 分支语句:根据条件进行判断 if 、switch
3、 循环语句: for , while ,do while
分支结构
条件语句 if
if(条件表达式){
//若条件表达式结果为 true 时,需要执行的语句
}
if(条件表达式){
//若条件表达式结果为 true 时,需要执行的语句
}else{
//若条件表达式结果为 false 时,需要执行的语句
}
if(条件表达式1){
//若条件表达式1 结果为 true 时,需要执行的语句
}else if(条件表达式2){
//若条件表达式2 结果为 true 时,需要执行的语句
}else if(条件表达式3){
//若条件表达式3 结果为 true 时,需要执行的语句
}
……
else{
//若上述条件表达式结果都为 false 时,需要执行的语句
}
题目:
用 if else语句求奇偶数
public static void main(String[] args){
Scanner scan = new Scanner(System.in) ;
System.out.println("请输入数字");
int num = scan.nextInt();
if(num % 2 == 0 ){
System.out.println("这是偶数");
}else{
System.out.println("这是奇数");
}
}
注意在一组条件判断语句中else if 可以有多个 但是 if ,else 只能有一个
switch(条件选择器)
分支判断
switch(变量名或表达式){
case 符合数字或字符 : 语句1 ;break ;
case 符合数字或字符 : 语句2 ;break ;
default : 语句3 ;
}
case中只能是byte,short,int,char还有枚举类型
。所以switch中的变量和表达式结果只能是byte,short,int,char还有枚举类型
(switch中千万不能写比较式)。但是在JDK7.0
以后,也兼容了String类型
switch(n)
{
case n1:statement;break;
case n2:statement:break;
......
default:statement
}
n为选择因子(变量,表达式),其作用就是作为分支条件的判断,其值一旦和某个case的常数匹配成功,就会执行其后的语句,并且直到遇到break或执行到最后位置为止否则有啥执行啥。如果没有匹配的则会执行default中的代码然后向后执行直到遇到break或执行到最后位置为止。这意味着,如果一个case后无break语句,它不会跳出,会继续按顺序执行下一个case语句,直到其后有break语句或所有后面case语句执行完了为止。 注意
n1,n2...
必须为常量
循环结构
for循环
for(表达式1;表达式2;表达式3){
表达式4;
}
for:在有明确的循环次数
for(① ; ② ; ③){
④
}
流程:①②④③②④③②……②
执行的顺序为:
1)第一次循环,即初始化循环。
首先执行表达式1(一般为初始化语句),再执行表达式2(一般为条件判断语句),判断表达式1是否符合表达式2的条件,如果符合,则执行表达式4,否则,停止执行,最后执行表达式3.
2)下次的循环:
首先执行表达式2,判断表达式3是否符合表达式2的条件;如果符合,继续执行表达式4,否则停止执行,最后执行表达式3.如果往复,直到表达式3不再满足表达式2的条件。
在循环中我们经常用到变量来保存一些信息:从变量的作用上将分为标识变量(即标识位)和累加变量(即计数器)
while循环
while(循环成立的条件)
{
执行的代码
}
当不知道循环的次数,只知道循环成立的条件时使用while循环
do while循环
①
do{
④
③
}while(②);
do{…}while(循环成立的条件); do{} while()的使用环境是:当至少要执行一次循环体的时候
while 和 do-while 的区别?
while : 先判断循环条件,再执行循环体。
do-while : 先执行循环体,再判断循环条件。至少执行一次