Java流程控制与Scanner类的使用
Java流程控制与Scanner类的使用
Scanner类
Scanner类可以使程序接受键盘输入,实现人机交互
一个完整的Scanner的使用例子:
//创建一个扫描器对象,用于接收键盘数据 Scanner s=new Scanner(System.in); System.out.println("使用next方法接收:"); //判断用户有没有输入字符串 if(s.hasNext()){ System.out.println("使用next接收数据:"); String a=s.next(); System.out.println("输出的内容为:"+a); } //重点:这步必须加,因为Scanner是属于io流的类,所以使用后必须关闭,不然会一直占用内存空间 s.close();
注意:next只能输出空格前的字符串,nextline可能输出空格后的字符串
将接收语句放进循环就可以从键盘循环输入数据,直到不符合循环的条件表达式
可以将循环的条件表达式写为判断用户有没有从键盘输入,直到输入不符合规范的字符时跳出循环
Java流程控制
顺序结构
Java中所有的程序都是顺序结构
选择结构
ifif-else多重if嵌套ifswitch结构
if结构
//表达式为true,则执行语句,否则,直接跳过 if(条件表达式){ 要执行的语句; }
if-else结构
//表达式为true,则执行语句,否则,执行else中的语句 if(条件表达式){ 执行的语句 }else{ 执行的语句 }
多重if结构
//适合解决同一种事,但分多种情况,例如成绩管理,100-90,卓越,90-80,优秀,80-70,良好,70-60,及格,60-0,不及格 if(条件表达式){ 执行的语句 }else if(条件表达式){ 执行的语句 }else if(条件表达式){ 执行的语句 }else{ 执行的语句 } //注意:else if就是将上一句的条件表达式取反,并与if后的条件表达式相交
嵌套if结构
//嵌套if就是if语句中还有if语句,另外我们所学的选择结构和循环结构都是可以互相嵌套的,来实现我们想要的功能 if(条件表达式){ if(条件表达式){ 执行的语句 } }else{ 执行的语句 }
switch结构
int n=s.nextInt(); //判断一个变量与一系列值中某个值相等 switch(n){ case 1: System.out.println("星期一");break; case 2: System.out.println("星期二");break; case 3: System.out.println("星期三");break; case 4: System.out.println("星期四");break; case 5: System.out.println("星期五");break; case 6: System.out.println("星期六");break; case 7: System.out.println("星期七");break; default: System.out.println("您输入的数字超出我们的范围!请输入介于1至7的数字。"); }
循环结构
whiledo-whilefor增强型for
while结构
//如果表达式结果为true,则进入循环,直到不满足条件时结束,因此while中必须要有一个迭代,使得不进入死循环 while(条件表达式){ 执行的语句 }
do-while结构
//do-while循环中的语句至少会执行一次 do{ 执行的语句 }while(条件表达式)
for结构
//for循环的特点是,定义变量,条件表达式,迭代都是在for循环中定义的,for循环是最灵活,最有效地循环 for(int i=1;i<=5;i++){ System.out.println(i+"\t"); } //for循环的快捷键,数字.for
增强型for结构
//就是为数组而生的,将数组中的每一个元素都一一赋值给x,for每循环一次赋一个 int[] numbers={1,2,3,4,5,6} for(int x:numbers){ System.out.println(x); } //增强型for循环的快捷键,数组.for
赞 (0)