一、Scanner、if、switch
一、用户交互scanner
hasnextLine和nextLine
- 等待用户输入的方法:hasNext(),hasNextLine()。程序运行到这个方法的时候会静止等待,返回布尔类型的数据
- 获取输入的内容:next(),nextLine()。也会等待,并且返回用户输入的内容
package com.ling.java基础;
import java.util.Scanner;
public class Hello{
public static void main(String[] args){
Scanner scanner = new Scanner(System.in);//创建一个scanner对象来监测用户的输入
System.out.println("请输入你要说的话");
if (scanner.hasNextLine()){//这里暂停,知道用户输入了之后再继续运行
String outPut = scanner.nextLine();//获取用户的输入内容
System.out.println("输出的是"+outPut);
}
}
}
hasNextDouble和nextDouble(hasNext。。)
- hasNextDouble用来判断是否是double类型的数据,同样会等待用户输入数据,如果输入的不是double类型的数据,name返回的是false
- nextDouble用来获取用户输入的double类型的数据,如果不是double类型的数据,那么会报错。
- 同理hasNextIne、nextInt以及其他。
package com.ling.java基础;
import java.util.Scanner;
public class Hello{
public static void main(String[] args) {
System.out.println("请输入你想的数字");
Scanner scanner = new Scanner(System.in);
if (scanner.hasNextInt()){
int num = scanner.nextInt();
System.out.println("你输入的是整数"+num);
}else{
System.out.println("你输入的是小数");
}
scanner.close();
}
}
二、算法结构
顺序结构
- java的基本结构就是顺序结构,除非特别指明,否则程序都是按照顺序一句一句执行。
- 顺序结构是最简单的算法结构
- 它是任何一个算法都离不开的基本算法结构
选择结构
-
单选择结构
- 只有一个if
-
双选择结构
- 有一个if和一个else
-
多选择结构
-
可能由多个if组成
-
如果是由多个if组成的话,当任意一个if满足以后,仍然会进行下一个if的比较
-
package com.ling.java基础; import java.util.Scanner; public class Hello { public static void main(String[] args) { System.out.println("请输入你的成绩:"); Scanner scanner = new Scanner(System.in); int score = scanner.nextInt(); if (score > 0 && score < 60) { System.out.println("成绩不合格"); } if (score >= 40 && score < 80) { System.out.println("成绩良好"); } else { System.out.println("成绩优秀!"); } scanner.close(); } } //输入: 50 //输出: 成绩不及格 // 成绩良好
-
-
由if和多个else if组成
-
由if和else if组成的话,只要满足了其中一个if或者else if的话,条件结构就会中止。
-
package com.ling.java基础; import java.util.Scanner; public class Hello { public static void main(String[] args) { System.out.println("请输入你的成绩:"); Scanner scanner = new Scanner(System.in); int score = scanner.nextInt(); if (score > 0 && score < 60) { System.out.println("成绩不合格"); } else if (score >= 40 && score < 80) { System.out.println("成绩良好"); } else { System.out.println("成绩优秀!"); } scanner.close(); } } //输入:50 //输出:成绩不合格
-
-
-
嵌套的if结构
- 可以在if、else if、else里面嵌套if结构
switch多选择结构
-
switch可以根据某个变量的值来做出相应的操作
-
switch在符合某一个case之后会执行那个操作,并且同时会执行下面的case的操作,这就是swith穿透
-
解决swith穿透可以在每个case后面加上break。
package com.ling.java基础; import java.util.Scanner; public class Hello { public static void main(String[] args) { System.out.println("请输入你的成绩"); Scanner scanner = new Scanner(System.in); while(scanner.hasNext()){ String score = scanner.next(); switch(score){ case "A": System.out.println("优秀"); break; case "B": System.out.println("优良"); break; case "C": System.out.println("合格"); break; case "D": System.out.println("不合格"); break; default: System.out.println("定位未知"); } } scanner.close(); } }

浙公网安备 33010602011771号