Java流程结构
Java流程控制
Scanner对象
next方式
package com.wushuang.scanner;
import java.util.Scanner;
public class Demo01 {
public static void main(String[] args) {
//创建一个扫描器对象,用于接收键盘数据
Scanner scanner = new Scanner(System.in);
System.out.println("使用next方式接收:");
//判断用户有没有输入字符串
if (scanner.hasNext()){
//使用next方式接收
String str = scanner.next();
System.out.println("输出的内容为:"+ str);
}
//凡是属于IO流的类,如果不关闭会一直占用资源,要用完就关掉
scanner.close();
}
}
nextLine方式
package com.wushuang.scanner;
import java.util.Scanner;
public class Demo02 {
public static void main(String[] args) {
//用于接收键盘数据
Scanner scanner = new Scanner(System.in);
System.out.println("使用nextLine方式接收:");
//判断用户有没有输入
if (scanner.hasNextLine()){
//使用nextLine方式接收
String str = scanner.nextLine();
System.out.println("输出的内容为:"+str);
}
scanner.close();
}
}
拓展
package com.wushuang.scanner;
import java.util.Scanner;
public class Demo04 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
//从键盘接收数据
int i = 0;
float f = 0.0f;
System.out.println("请输入整数:");
//如果。。。那么
if (scanner.hasNextInt()){
i = scanner.nextInt();
System.out.println("整数数据:"+ i);
}else{
System.out.println("输入的不是整数数据!");
}
System.out.println("==========================");
System.out.println("请输入小数:");
//如果。。。那么
if (scanner.hasNextFloat()){
f = scanner.nextFloat();
System.out.println("小数数据:"+ f);
}else{
System.out.println("输入的不是小数数据!");
}
scanner.close();
}
}
顺序结构
从上而下,一种最基本的结构
package com.wushuang.struct;
public class ShunXuDemo {
public static void main(String[] args) {
System.out.println("hello1");
System.out.println("hello2");
System.out.println("hello3");
System.out.println("hello4");
}
}
选择结构
If选择结构
/*
If单选择结构
*/
package com.wushuang.struct;
import java.util.Scanner;
public class IfDemo01 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入内容:");
String s = scanner.nextLine();
//equals:判断字符串是否相等
if (s.equals("Hello")){
System.out.println(s);
}
System.out.println("End");
scanner.close();
}
}
/*
If双选择结构
*/
package com.wushuang.struct;
import java.util.Scanner;
public class IfDemo02 {
public static void main(String[] args) {
//考试大于60分为及格,小于60分为不及格
Scanner scanner = new Scanner(System.in);
System.out.println("请输入成绩:");
int score = scanner.nextInt();
if (score>=60){
System.out.println("及格");
}else{
System.out.println("不及格");
}
scanner.close();
}
}
/*
If多选择结构
*/
package com.wushuang.struct;
import java.util.Scanner;
public class IfDemo03 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入成绩:");
int score = scanner.nextInt();
if (score == 100){
System.out.println("恭喜满分!");
}else if (score >= 90){
System.out.println("优秀");
}else if (score >= 80){
System.out.println("良好");
}else if (score >= 60){
System.out.println("及格");
}else if (score >= 0){
System.out.println("不及格");
}else{
System.out.println("输入错误");
}
scanner.close();
}
}
Switch选择结构
package com.wushuang.struct;
public class SwitchDemo01 {
public static void main(String[] args) {
//case穿透 //switch匹配一个具体的值
char grade = 'C';
switch (grade){
case 'A':
System.out.println("优秀");
break;
case 'B':
System.out.println("良好");
break;
case 'C':
System.out.println("及格");
break;
case 'D':
System.out.println("再接再厉");
break;
case 'E':
System.out.println("挂科");
break;
default:
System.out.println("未知等级");
}
}
}
package com.wushuang.struct;
public class SwitchDemo02 {
public static void main(String[] args) {
String name = "无双";
//JDK7的新特性,表达式结果可以是字符串
//字符的本质还是数字
//反编译 java---class(字节码文件)---反编译(IDEA)
switch (name){
case "无双":
System.out.println("无双");
break;
case "哈哈哈":
System.out.println("哈哈哈");
break;
default:
System.out.println("你在干嘛");
}
}
}
循环结构
while循环
大多数情况让循环停止下来,需要一个让表达式失效的方式来结束循环。
package com.wushuang.struct;
public class WhileDemo03 {
public static void main(String[] args) {
//计算1+2+3+4+。。。+100
//高斯的故事
int i = 0;
int sum = 0;
while (i<=100){
sum+=i;
i++;
}
System.out.println(sum);
}
}
do...while循环
与while的区别在于,while是先判断后执行
package com.wushuang.struct;
public class DoWhileDemo02 {
public static void main(String[] args) {
int a = 0;
while (a<0){
System.out.println(a);
a++;
}
System.out.println("=================");
do{
System.out.println(a);
a++;
}while (a<0);
}
}
for循环
最有效、最灵活的循环结构
package com.wushuang.struct;
public class ForDemo01 {
public static void main(String[] args) {
int a =1;//初始化条件
while (a<=100) {//条件判断
System.out.println(a);//循环体
a += 2;//迭代
}
System.out.println("while循环结束");
//初始化//条件判断//迭代//
//快捷键为100.for
for (int i=1;i<=100;i++){
System.out.println(i);
}
System.out.println("for循环结束");
//死循环
for (; ;) {
}
}
}
Break和Continue
package com.wushuang.struct;
public class BreakDemo {
public static void main(String[] args) {
int i = 0;
while (i<100){
i++;
System.out.println(i);
if(i==30){
break;//强制退出循环
}
}
}
}
package com.wushuang.struct;
public class ContinueDemo {
public static void main(String[] args) {
int i = 0;
while (i<100){
i++;
if(i%10==0){
System.out.println();
continue;//跳出本次循环
}
System.out.print(i);
}
}
}

浙公网安备 33010602011771号