键盘录入

1、键盘录入:在程序运行的过程中,可以让用户录入一些数据,存储在内存的变量中,在后续的程序运行过程中,可以使用这些数据。

2、步骤:

  第一步:导包,在类声明的上面,import java.util.Scanner;

  第二步:创建键盘录入对象,Scanner sc = new Scanner(System.in);

  第三步:调用sc对象的nextInt方法,获取键盘录入的整数

      int x = sc.nextInt();

  第四步:使用x后续处理

import java.util.Scanner;
class Test 
{
    public static void main(String[] args) 
    {
        Scanner sc = new Scanner(System.in);//System.in获取
        System.out.println("Hello World!");
        int a =sc.nextInt();//nextInt()可以获取输入的整形类型
        String s = sc.next();//next()可以获取输入的字符串类型
        //nextChar()、nextBoolean()等等,详情可以查看在线api文档
        //http://tool.oschina.net/apidocs/apidoc?api=jdk-zh
    }
}

分支结构

1、if语句

class Test 
{
    public static void main(String[] args) 
    {
        Scanner sc = new Scanner(System.in);
        System.out.println("万岁爷,时辰不早了,该歇息了");
        int x = sc.nextInt();
        if(x==1){
            System.out.println("王皇后准备!");
        }else if(x==2){
            System.out.println("李贵妃准备!");
        }else{
            System.out.println("小李子");  
        }
    }
}            

2、switch语句

//注意,在switch语句中,如果case后的语句没有break,则有可能发生case击穿现象
import java.util.Scanner;
class Homework7 
{
    public static void main(String[] args) 
    {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入年:");
        int year = sc.nextInt();
        System.out.println("请输入月:");
        int month = sc.nextInt();
        System.out.println("请输入日:");
        int day = sc.nextInt();
        switch (month)
        {
        case 11:
            day +=31;
        case 10:
            day +=30;
        case 9:
            day +=31;
        case 8:
            day +=31;
        case 7:
            day +=30;
        case 6:
            day +=31;
        case 5:
            day +=30;
        case 4:
            day +=31;
        case 3:
            if (year%400==0||(year%4==0&&year%100!=0))
            {
                day +=29;
            }else{
                day +=28;
            }
        case 2:
            day +=31;
        case 1:
            break;
        default:
            System.out.println("您输入的月份有误!");        
        }
        System.out.println(year+"年"+month+"月"+day+"日是"+year+"年的第"+day+"天20");
    }
}
switch语句之判断年中第几天

注意:

1、Default语句:可以写也可以不写。如果不写,就有可能一个语句都执行不到。建议把default语句加上。

2、Default语句可以写在任意位置,无论写在什么位置,都是最后去匹配,建议把default语句写在最后。

3、Switch语句结束的条件:碰到了break语句;碰到了右大括号。

3.if语句和switch语句的区别

 

相同点:if语句和switch语句都可以表达分支结构

 

不同点:

 

  1if语句格式相对灵活,更加强大,switch语句相对弱小。所有的switch语句都可以被if语句替代。

 

  2if语句更多的是做一些连续性的判断,而switch语句更多的是做一些离散性的匹配

 

  3if语句每次都需要获取表达式的值,而switch只获取一次表达式的值,所以相对switch的效率高一些。

 

posted on 2019-07-07 19:38  幸福的小耗子  阅读(148)  评论(0编辑  收藏  举报