语法
用户交互Scanner
-
在基本语法中,没有实现程序与人的交互,Java给我们提供工具类,可以获取用户输入。java.util.Scanner是Java5的新特征,可以通过Scanner类来获取用户输入
-
基本语法
Scanner s = new Scanner(System.in)
3.通过Scanner类的next()与nextLine()方法获取输入的字符串,在读取前我们一般需要使用hasNext()与hasNextLine()判断是否还有输入的数据。
package com.na.scanner;
import java.util.Scanner;
/**
* 〈一句话功能简述〉<br>
* 〈〉
*
* @author 22724
* @create 2021/10/21
* @since 1.0.0
*/
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();
}
package com.na.scanner;
import java.util.Scanner;
/**
* 〈一句话功能简述〉<br>
* 〈〉
*
* @author 22724
* @create 2021/10/21
* @since 1.0.0
*/
public class Demo02 {
public static void main(String[] args) {
//从键盘接收数据
Scanner scanner = new Scanner(System.in);
System.out.println("使用nextLine方式接收:");
//hasNextLine,判断程序是否还有输入
if(scanner.hasNextLine()){
String str = scanner.nextLine();
System.out.println("输出的内容为:"+str);
}
scanner.close();
}
}
- next():
-
- 一定要读取到有效字符后才可以结束输入
- 对输入有效字符之前遇到的空白,next()方法会自动将其去掉
- 只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符
- next()不能得到带有空格的字符串
-
- nextLine():
-
- 以Enter为结束符,也就是说nextLine()方法返回的是输入回车之前的所有字符。
- 可以获得空白
-
顺序结构
- JAVA的基本结构就是顺序结构,除非特别指明,否则就按照顺序一句一句执行
- 顺序结构是最简单的算法结构
- 语句与语句之间,框与框之间是按从上到下的顺序进行的,它是由若干个依法执行的处理步骤组成的,他是任何一个算法都不离开的一种基本算法结构
选择结构
-
if单选择结构
-
-
我们很多时候需要去判断一个东西是否可行,然后我们才去执行,这样一个过程在程序中用if语句来表示
-
语法:
if(布尔表达式){ //如果布尔表达式为true将执行的语句 }
package com.na.struct; import java.util.Scanner; /** * 〈一句话功能简述〉<br> * 〈〉 * * @author 22724 * @create 2021/10/21 * @since 1.0.0 */ public class Demo02 { 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双选择结构
-
-
例如:公司要收购一个软件,成功了,给人支付100万元,失败了,自己找人开发。这样的需求用一个if就搞不定,我们需要有两个双选择结构,所有就有了if-else结构
-
if(布尔表达式){ //如果布尔表达式的值为true }else{ //如果布尔表达式的值为false }
-
-
-
if多选择结构
-
if(布尔表达式1){ //如果布尔表达式 1 的值为true执行代码 }else if(布尔表达式 2){ //如果布尔表达式 2 的值为true执行代码 }else if(布尔表达式 3){ //如果布尔表达式 3 的值为true执行代码 }else{ //如果以上布尔表达式都不为true执行代码 }
-
package com.na.struct; import java.util.Scanner; /** * 〈一句话功能简述〉<br> * 〈〉 * * @author 22724 * @create 2021/10/21 * @since 1.0.0 */ public class Demo03 { public static void main(String[] args) { //考试成绩大于60就是及格,小于60分就不及格 Scanner scanner = new Scanner(System.in); System.out.println("请输入成绩:"); int score = scanner.nextInt(); if(score==100){ System.out.println("恭喜满分"); }else if(score<100 && score >=90){ System.out.println("A级"); }else if(score<90 && score >=80){ System.out.println("B级"); }else if(score<80 && score >=70){ System.out.println("C级"); }else if(score<70 && score >=60){ System.out.println("D级"); }else if(score<60 && score >=0){ System.out.println("不及格"); }else{ System.out.println("成绩不合法"); } scanner.close(); } }
-
-
嵌套的if结构
-
switch多选择结构
-
多选择结构还有实现方式就是switch case语句
-
switch case 语句判断一个变量与一系列值中某个值是否相等,每个值称为一个分支
-
switch语句中的变量类型可以是:
-
byte,short ,int 或者char
-
从Java SE7开始
-
switch支持字符串String类型
-
同时case标签必须为字符串常量或字面量
switch(expression){ case value: //语句 break;//可选 case value : //语句 break;//可选】 //你可以有任意数量的case语句 default ://可选 //语句 }
-
-
循环结构
break & continue
-
break在任何循环结构语句主体部分,均可用break控制循环流程,break用于强行退出循环,不执行循环中剩余的语句。(break语句在switch语句中使用)
-
continue语句用在循环语句体中,用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判定。
-
关于goto关键字
-
Java中没有goto。但是break和conntinue有goto的影子——带标签的break和continue
-
"标签"是指后面跟一个冒号的标识符,例如:label:
-