Java基础编程500题——枚举类

💥 该系列属于【Java基础编程500题】专栏,如您需查看Java基础的其他相关题目,请您点击左边的连接

目录

1. 创建一个表示星期的枚举类,并输出所有星期。

2. 创建一个枚举类表示颜色,并实现一个方法返回颜色的中文名称。

3. 创建一个枚举类表示月份,并实现一个方法返回每个月的天数。

4. 创建一个枚举类表示操作系统的类型,并实现一个方法比较两个操作系统是否相同。

5. 创建一个枚举类表示分数等级,并实现一个方法判断分数是否在某个等级范围内。

6. 定义一个枚举类Operation,包含四种基本算术运算,每个枚举常量有一个方法apply,用于对两个整数进行相应的运算。

7. 定义一个枚举类Color,包含三种颜色,每个枚举常量有一个方法getDescription,返回颜色的描述。

8. 定义一个枚举类Season,包含四季的枚举常量,每个枚举常量有一个方法getWeather,返回该季节的天气特点。


 ✨✨  返回题目目录 ✨ ✨ 

Java基础编程500题


1. 创建一个表示星期的枚举类,并输出所有星期。

enum Weekday {
    MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY;
}

public class Main {
    public static void main(String[] args) {
        for (Weekday day : Weekday.values()) {
            System.out.println(day);
        }
    }
}

2. 创建一个枚举类表示颜色,并实现一个方法返回颜色的中文名称。

enum Color {
    RED("红色"), GREEN("绿色"), BLUE("蓝色");
    private final String ChineseName;

    Color(String string) {
        this.ChineseName = string;
    }

    public String getChineseName() {
        return ChineseName;
    }
}

public class Main {
    public static void main(String[] args) {
        for (Color color : Color.values()) {
            System.out.println(color.name() + " 的中文名称是:" + color.getChineseName());
        }
    }
}

3. 创建一个枚举类表示月份,并实现一个方法返回每个月的天数。

enum Month {

    JANUARY(31), FEBRUARY(28), MARCH(31), APRIL(30),
    MAY(31), JUNE(30), JULY(31), AUGUST(31),
    SEPTEMBER(30), OCTOBER(31), NOVEMBER(30), DECEMBER(31);

    private final int days;

    Month(int days) {
        this.days = days;
    }

    public int getDays() {
        return days;
    }

}

public class Main {
    public static void main(String[] args) {
        int days = Month.JANUARY.getDays();
        System.out.println(days);

        Month april = Month.APRIL;
        System.out.println(april);

        for (Month month : Month.values()) {
            System.out.println(month.name() + " 有 " + month.getDays() + " 天");
        }
        
    }
}

4. 创建一个枚举类表示操作系统的类型,并实现一个方法比较两个操作系统是否相同。

enum OSType {
    WINDOWS, LINUX, MACOS, UNIX;

    public boolean isSame(OSType other) {
        return this == other;
    }
    
}


public class Main {
    public static void main(String[] args) {
        System.out.println("WINDOWS 和 LINUX 相同吗? " + OSType.WINDOWS.isSame(OSType.LINUX));
        System.out.println("MACOS 和 MACOS 相同吗? " + OSType.MACOS.isSame(OSType.MACOS));
    }
}

5. 创建一个枚举类表示分数等级,并实现一个方法判断分数是否在某个等级范围内。

enum Grade {
    A(90, 100),
    B(80, 89),
    C(70, 79),
    D(60, 69),
    F(0, 59);

    private final int low;
    private final int high;

    Grade(int low, int high) {
        this.low = low;
        this.high = high;
    }

    public boolean isInRange(int score) {
        return score >= low && score <= high;
    }

}


public class Main {
    public static void main(String[] args) {
        System.out.println("85 分属于 A 级别吗? " + Grade.A.isInRange(85));
        System.out.println("70 分属于 C 级别吗? " + Grade.C.isInRange(70));
    }
}

6. 定义一个枚举类Operation,包含四种基本算术运算,每个枚举常量有一个方法apply,用于对两个整数进行相应的运算。

enum Operation {
    PLUS {
        @Override
        public int apply(int a, int b) {
            return a + b;
        }
    },
    MINUS {
        @Override
        public int apply(int a, int b) {
            return a - b;
        }
    },
    TIMES {
        @Override
        public int apply(int a, int b) {
            return a * b;
        }
    },
    DIVIDE {
        @Override
        public int apply(int a, int b) {
            if (b != 0) {
                return a / b;
            } else {
                throw new IllegalArgumentException("除数不能为0");
            }
        }
    };

    public abstract int apply(int a, int b);
}

public class Main {
    public static void main(String[] args) {
        System.out.println("加法结果:" + Operation.PLUS.apply(5, 3));
        System.out.println("减法结果:" + Operation.MINUS.apply(5, 3));
        System.out.println("乘法结果:" + Operation.TIMES.apply(5, 3));
        System.out.println("除法结果:" + Operation.DIVIDE.apply(10, 2));
    }
}

7. 定义一个枚举类Color,包含三种颜色,每个枚举常量有一个方法getDescription,返回颜色的描述。

enum Color {
    RED {
        @Override
        public String getDescription() {
            return "红色";
        }
    },
    GREEN {
        @Override
        public String getDescription() {
            return "绿色";
        }
    },
    BLUE {
        @Override
        public String getDescription() {
            return "蓝色";
        }
    };

    public abstract String getDescription();
}

public class Main {
    public static void main(String[] args) {
        System.out.println("颜色描述:" + Color.RED.getDescription());
        System.out.println("颜色描述:" + Color.GREEN.getDescription());
        System.out.println("颜色描述:" + Color.BLUE.getDescription());
    }
}

8. 定义一个枚举类Season,包含四季的枚举常量,每个枚举常量有一个方法getWeather,返回该季节的天气特点。

enum Season {
    SPRING {
        @Override
        public String getWeather() {
            return "温暖";
        }
    },
    SUMMER {
        @Override
        public String getWeather() {
            return "炎热";
        }
    },
    AUTUMN {
        @Override
        public String getWeather() {
            return "凉爽";
        }
    },
    WINTER {
        @Override
        public String getWeather() {
            return "寒冷";
        }
    };

    public abstract String getWeather();
}

public class Main {
    public static void main(String[] args) {
        System.out.println("春季的天气特点:" + Season.SPRING.getWeather());
        System.out.println("冬季的天气特点:" + Season.WINTER.getWeather());
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值