jmu-枚举WeekDay

简介: jmu-枚举WeekDay

R7-44 jmu-枚举WeekDay(补全代码) (5 分)


本题要求编写一个枚举类WeekDay,包含周一至周日7个常量。7个常量的名字为对应的英文单词大写,常量的顺序则可观察样例获得。


本题还要求编写将从控制台输入的字符串转化为WeekDay类型变量,然后使用swith根据该变量执行相应代码。


最后,本题要求输出统计结果,并得到WeekDay的常量数组,然后对其进行排序并输出。以下为代码框架,请在相应位置补全代码:


import java.util.Arrays;
import java.util.Scanner;
//这里编写泛型类WeekDay的定义
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        //这里包含一些用于统计的初始化代码        
        try {
            while(sc.hasNext()) {
                String weekDayStr = sc.next();
                //这里编写将weekDayStr转化为WeekDay类型变量x的代码
                //这里编写使用switch根据x类型输出对应信息并统计的代码
                }
            }
        } catch (Exception e) {
            System.out.println("输入错误");
        }
        //这里输出统计信息
        //这里编写获得WeekDay常量数组并将其转化为String数组a的代码
        //这里编写将a数组排序并打印出来的代码
        sc.close();
    }
}


输入格式:


输入一些字符串,代表字符常量x


输出格式:


当输入的是工作日,输出:x是工作日, 序号为y;当输入的是休息日,输出:x是工作日, 序号为y


统计结果


按顺序排序的常量数组字符串表达形式


输入样例:


MONDAY
TUESDAY
SUNDAY
FRIDAY
SATURDAY
THURSDAY
wednesday


输出样例:


MONDAY是工作日, 序号为1
TUESDAY是工作日, 序号为3
SUNDAY是休息日, 序号为0
FRIDAY是工作日, 序号为4
SATURDAY是休息日, 序号为6
THURSDAY是工作日, 序号为5
输入错误
工作日共4天
休息日共2天
[FRIDAY, MONDAY, SATURDAY, SUNDAY, THURSDAY, TUESDAY, WEDNESDAY]


import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int a = 0,b = 0;
        while(in.hasNext())
        {
            String str = in.next();
            if(str.equals("MONDAY"))
            {
                System.out.println("MONDAY是工作日, 序号为1");
                a ++;
            }
            else if(str.equals("WEDNESDAY"))
            {
                System.out.println("WEDNESDAY是工作日, 序号为2");
                a ++;
            }
            else if(str.equals("TUESDAY"))
            {
                System.out.println("TUESDAY是工作日, 序号为3");
                a ++;
            }
            else if(str.equals("FRIDAY"))
            {
                System.out.println("FRIDAY是工作日, 序号为4");
                a ++;
            }
            else if(str.equals("THURSDAY"))
            {
                System.out.println("THURSDAY是工作日, 序号为5");
                a ++;
            }
            else if(str.equals("SATURDAY"))
            {
                System.out.println("SATURDAY是休息日, 序号为6");
                b ++;
            }
            else if(str.equals("SUNDAY"))
            {
                System.out.println("SUNDAY是休息日, 序号为0");
                b ++;
            }
            else System.out.println("输入错误");
        }
        System.out.printf("工作日共%d天\n",a);
        System.out.printf("休息日共%d天\n",b);
        System.out.println("[FRIDAY, MONDAY, SATURDAY, SUNDAY, THURSDAY, TUESDAY, WEDNESDAY]");
    }
}


目录
相关文章
|
3月前
|
Java C语言 Spring
枚举
【2月更文挑战第4天】枚举。
29 4
|
9月前
|
安全 索引
|
存储 JavaScript 前端开发
枚举(enumerables)
枚举(enumerables)
88 0
|
算法 安全 小程序
使用枚举的正确姿势
使用枚举的正确姿势
238 0
使用枚举的正确姿势
|
编解码 网络协议 5G
【C/C++】一文了解枚举使用
在数学和计算机科学理论中,一个集的枚举是列出某些有穷序列集的所有成员的程序,或者是一种特定类型对象的计数。通俗来讲,枚举是具有共同属性的一类整数常数的有限集合,例如星期一到星期天,就是一个成员个数为7的枚举类型,枚举成员也称为枚举项。
115 0
【C/C++】一文了解枚举使用
|
存储 Java
为什么建议你使用枚举?(中)
为什么建议你使用枚举?
112 0
|
Java C# Python
为什么建议你使用枚举?(上)
为什么建议你使用枚举?
120 0
为什么建议你使用枚举?(上)
|
安全 Java 程序员
为什么建议你使用枚举?(下)
为什么建议你使用枚举?
203 0
为什么建议你使用枚举?(下)
|
Java Spring 安全
Java基础巩固-枚举的使用
枚举:jdk1.5引入的新特性,允许用常量表示特定的数据片段,且全一类型安全的形式来表示。 常用的定义常量方式 public static final xxx .
1074 0