1、用户交互Scanner
Scanner对象
java.util.Scanner是java5的新特性,可以通过这个类来获取用户的输入实现程序和人的交互
基本语法:
Scanner s = new Scanner(System.in);
System.out.println("请输入数据:");
String str = scanner.nextLine();
//String str = scanner.next();
System.out.println("你输入的数据是:"+str);
scanner.close();
通过Scanner类的next()和nextLine()方法获取输入的字符串,在读取前我们一般需要使用hasNext()和hasNextLine()判断是否还有输入的数据
next方法:一定要读取到有效字符串后才结束,且不能得到带有空格的全部字符串
nextLine方法:与回车键为结束符,可以得到用户输入的所有字符,包括带有空格的字符
2、顺序结构
Java的基本结构就是顺序结构,非特定指明顺序条件下,语句与语句之间,框与框之间就是按由上到下顺序执行的,它是由若干个依次执行的处理步骤组成的,它是任何一个算法都离不开的一种基本算法结构。
3、选择结构
if单选择结构
语法结构:
if(布尔表达式){
//如果布尔表达式为true,将执行语句
}
列如:
import java.util.Scanner;
public class dome05 {
public static void main(String[] args) {
Scanner scanner =new Scanner(System.in);
System.out.println("请输入一个内容:");
String i =scanner.nextLine();
//equals判断字符串是否相等
if (i.equals("hello")){
System.out.println(i);
}
scanner.close();
}
}
if双选择结构
语法结构:
if(布尔表达式){
//如果布尔表达式为true,将执行语句
}else{
//如果布尔表达式的值为false
}
列如:
import java.util.Scanner;
public class dome05 {
public static void main(String[] args) {
Scanner scanner =new Scanner(System.in);
System.out.println("请输入你的成绩:");
int m = scanner.nextInt();
if(m > 60){
System.out.println("及格");
}else {
System.out.println("不及格");
}
scanner.close();
}
}
if多选择结构
语法结构:
if(布尔表达式1){//如果布尔表达式1为true,将执行代码语句
}else if(布尔表达式2){//如果布尔表达式2的值为true,将执行代码语句
}else if(布尔表达式3){//如果布尔表达式3的值为true,将执行代码语句
}else{//如果以上布尔表达式的值都不为true,执行此代码语句
}
列如:
import java.util.Scanner;
public class dome05 {
public static void main(String[] args) {
Scanner scanner =new Scanner(System.in);
System.out.println("请输入你的成绩:");
int m = scanner.nextInt();
if(m == 100){
System.out.println("完美");
}else if (100>m && m>=90){
System.out.println("优秀");
}else if (90>m && m>=80){
System.out.println("良好");
}else if (80>m && m>=70){
System.out.println("好");
}else if (70>m && m>=60){
System.out.println("及格");
}else if (60>m && m>=0){
System.out.println("不及格");
}else {
System.out.println("?");
}
scanner.close();
}
}
嵌套的if结构
语法结构:
if(布尔表达式1){
//如果布尔表达式1为true,将执行语句
if(布尔表达式2){
//如果布尔表达式2为true,将执行语句
}}
switch多选择结构
switch case语句判断一个变量与一系列值中某个值是否相等,每个值称为一个分支
语法结构:
switch(变量名){
case value:
//语句
break;
default:
//语句 }
列如:
public class demo06 {
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;
default:
System.out.println("输入错误");
}
}
}
从Java SE7开始switch支持字符串String类型了
4、循环结构
while循环
语法结构:
while(布尔表达式){
//循环内容
}
注意:只要布尔表达式为true,循环就会一直执行下去
列如:
public class demo07 {
public static void main(String[] args) {
int i =0;
int sum=0;
while(i<=100){
sum=sum+i;
i=i+1;
}System.out.println(sum);
}
}
do…while循环
相对于while语句的先判断后执行而言,do…while循环至少会执行一次,是先执行后判断的!
语法结构:
do{
//代码语句
}while(布尔表达式);
for循环
1、for循环语句是支持迭代的一种通用结构,是最有效、最灵活的循环结构
2、for循环执行的次数是执行前就确定的
语法格式:
for(初始化;布尔表达式;更新){
//代码语句
}
5、break、continue
break用于强行退出循环,不执行循环中剩余的部分,常与switch搭配使用
continue语句在循环体系中用于终止某次循环过程,即跳过循环体中尚未执行的语句接着进行下一次是否执行循环的判定