用户交互Scanner
1.1Scanner获取用户的输入
public class Demo01 {
public static void main(String[] args) {
//创建一个扫描器对象,用于接收键盘数据
Scanner scanner=new Scanner(System.in);//等待输入
System.out.println("使用next方法接收:");
//判断有没有输入字符
if(scanner.hasNext()){
String str=scanner.next();
System.out.println("输出的内容为:"+str);
}
scanner.close();
}
}
/*
使用next方法接收:
hello world
输出的内容为:hello
*/
public class Demo02 {
public static void main(String[] args) {
Scanner scanner=new Scanner(System.in);
System.out.println("使用nextline方法接收");
if(scanner.hasNextLine()){
String str=scanner.nextLine();
System.out.println("输出的内容为:"+str);
}
scanner.close();
}
}
/*
使用nextline方法接收
hello world
输出的内容为:hello world
*/
1.2判断输入的字符是否符合规范
//判断输入的字符是否符合规范
public class Demo03 {
public static void main(String[] args) {
Scanner scanner=new Scanner(System.in);
System.out.println("请输入整数");
if(scanner.hasNextInt()){
int i=scanner.nextInt();
System.out.println("整数谁"+i);
}else{
System.out.println("输出的不是整数");
}
}
}
1.3输入多个数字,求和和平均数
public class Demo04 {
public static void main(String[] args) {
//输入多个数字,求和和平均数
int m=0;//数字个数
double sum = 0;
Scanner scanner=new Scanner(System.in);
System.out.println("请输入第"+(m+1)+"个数");
while(scanner.hasNextDouble()){
System.out.println("请输入第"+(m+2)+"个数");
double x= scanner.nextDouble();
m++;
sum=sum+x;
}
System.out.println(m+"个数字的和是:"+sum);
System.out.println(m+"个数字的平均数是:"+(sum/m));
scanner.close();
}
/*
请输入第1个数
1
请输入第2个数
5
请输入第3个数
8
请输入第4个数
.
3个数字的和是:14.0
3个数字的平均数是:4.666666666666667
*/
}
2.顺序结构
3.选择结构
if选择结构
switch选择结构
public class Demo05 {
public static void main(String[] args) {
char grade='C';
switch (grade){
case 'A':
System.out.println("优秀");
break;//不加break会一直向下执行
case'B':
System.out.println("良好");
break;
case'C':
System.out.println("及格");
break;
default:
System.out.println("未知等级");
}
}
}
//反编译 Java–》class(字节码文件)-----反编译(使用IDEA)
4.循环结构
4.1for( ; ; )
增强for循环读取数组
4.2while
4.3do while
5.break&continue
-
用break语句可以使流程跳出switch语句体,也可以用break语句在循环结构终止本层循环体,从而提前结束本层循环
-
continue语句的作用是跳过本次循环体中余下尚未执行的语句,立即进行下一次的循环条件判定,可以理解为仅结束本次循环
6.练习
9*9乘法表
public class Demo06 {
//打印99乘法表
public static void main(String[] args) {
for(int i=1;i<10;i++){
for(int j=1;j<=i;j++){
System.out.print(j+"*"+i+"="+(j*i)+"\t");
}
System.out.println();
}
}
}