首页 > 其他分享 >枚举类

枚举类

时间:2022-12-07 00:56:03浏览次数:38  
标签:String System 枚举 println Season1 public out

枚举类

SeasonTest

 

package com.atguigt.java;

/*
   使用enum关键字来定义枚举类
   说明:定义的枚举类默认继承于java.lang.Enum类
*/
public class SeasonTest1 {

   public static void main(String[] args) {
       Season1 summer = Season1.SUMMER;
//       System.out.println(summer.getSeasonName() + "," + summer.getSeasonDesc());
       // toString();
       System.out.println(summer.toString());

       System.out.println("******************************");
       // values();
       Season1[] values = Season1.values();
       for (int i = 0; i < values.length; i++) {
           System.out.println(values[i]);
           values[i].show();
      }

       Thread.State[]  values1 = Thread.State.values();
       for (int i = 0; i < values1.length; i++) {
           System.out.println(values1[i]);
      }

       // valueOf(String objName):返回枚举类中对象名是objName的对象。
       // 如果没有objName的枚举类对象,则抛异常:IllegalArgumentException
//       Season1 winter = Season1.valueOf("WINTER1");
       Season1 winter = Season1.valueOf("WINTER");
       System.out.println(winter);
       winter.show();
  }
}

interface Info{
   void show();
}

// 使用enum关键字定义枚举类
enum Season1 implements Info{

   // 1.提供当前枚举类的对象,多个对象之间用“,”隔开,末尾的对象用“;”结束
   SPRING("春天","春暖花开"){
       @Override
       public void show() {
           System.out.println("春天在哪里");
      }
  },
   SUMMER("夏天","夏日炎炎"){
       @Override
       public void show() {
           System.out.println("宁夏");
      }
  },
   AUTUMN("秋天","秋高气爽"){
       @Override
       public void show() {
           System.out.println("秋天不回来");
      }
  },
   WINTER ("冬天","冰天雪地"){
       @Override
       public void show() {
           System.out.println("大约在冬季");
      }
  };

   // 2.声明Season对象的属性
   private final String seasonName;
   private final String seasonDesc;

   // 3.私有化类的构造器
   private Season1(String seasonName,String seasonDesc){
       this.seasonName = seasonName;
       this.seasonDesc = seasonDesc;
  }


   // 4.其他诉求1:获取枚举类对象的属性

   public String getSeasonName() {
       return seasonName;
  }

   public String getSeasonDesc() {
       return seasonDesc;
  }

   // 5.其他诉求2:提供toString()

   @Override
   public String toString() {
       return "Season{" +
               "seasonName='" + seasonName + '\'' +
               ", seasonDesc='" + seasonDesc + '\'' +
               '}';
  }

//   @Override
//   public void show() {
//       System.out.println("这是一个季节");
//   }
}


 

SeasonTest1

package com.atguigt.java;

/*
   使用enum关键字来定义枚举类
   说明:定义的枚举类默认继承于java.lang.Enum类
*/
public class SeasonTest1 {

   public static void main(String[] args) {
       Season1 summer = Season1.SUMMER;
//       System.out.println(summer.getSeasonName() + "," + summer.getSeasonDesc());
       // toString();
       System.out.println(summer.toString());

       System.out.println("******************************");
       // values();
       Season1[] values = Season1.values();
       for (int i = 0; i < values.length; i++) {
           System.out.println(values[i]);
           values[i].show();
      }

       Thread.State[]  values1 = Thread.State.values();
       for (int i = 0; i < values1.length; i++) {
           System.out.println(values1[i]);
      }

       // valueOf(String objName):返回枚举类中对象名是objName的对象。
       // 如果没有objName的枚举类对象,则抛异常:IllegalArgumentException
//       Season1 winter = Season1.valueOf("WINTER1");
       Season1 winter = Season1.valueOf("WINTER");
       System.out.println(winter);
       winter.show();
  }
}

interface Info{
   void show();
}

// 使用enum关键字定义枚举类
enum Season1 implements Info{

   // 1.提供当前枚举类的对象,多个对象之间用“,”隔开,末尾的对象用“;”结束
   SPRING("春天","春暖花开"){
       @Override
       public void show() {
           System.out.println("春天在哪里");
      }
  },
   SUMMER("夏天","夏日炎炎"){
       @Override
       public void show() {
           System.out.println("宁夏");
      }
  },
   AUTUMN("秋天","秋高气爽"){
       @Override
       public void show() {
           System.out.println("秋天不回来");
      }
  },
   WINTER ("冬天","冰天雪地"){
       @Override
       public void show() {
           System.out.println("大约在冬季");
      }
  };

   // 2.声明Season对象的属性
   private final String seasonName;
   private final String seasonDesc;

   // 3.私有化类的构造器
   private Season1(String seasonName,String seasonDesc){
       this.seasonName = seasonName;
       this.seasonDesc = seasonDesc;
  }


   // 4.其他诉求1:获取枚举类对象的属性

   public String getSeasonName() {
       return seasonName;
  }

   public String getSeasonDesc() {
       return seasonDesc;
  }

   // 5.其他诉求2:提供toString()

   @Override
   public String toString() {
       return "Season{" +
               "seasonName='" + seasonName + '\'' +
               ", seasonDesc='" + seasonDesc + '\'' +
               '}';
  }

//   @Override
//   public void show() {
//       System.out.println("这是一个季节");
//   }
}


 

标签:String,System,枚举,println,Season1,public,out
From: https://www.cnblogs.com/jiaxing-java/p/16961924.html

相关文章

  • C语言学习入门 (八) 结构体和枚举
    结构体它允许内部的元素是不同类型的结构体的定义//结构体类型:struct{charintfloat};//定义一个结构体变量,定义变量时才分配存储空间structPersonstructchar *name;int}......
  • 递归实现指数型枚举
    递归实现指数型枚举从1∼n这n个整数中随机选取任意多个,输出所有可能的选择方案。输入格式输入一个整数n。输出格式每行输出一种方案。同一行内的数必须升序排列......
  • 1774. 最接近目标价格的甜点成本 ----- 枚举
    你打算做甜点,现在需要购买配料。目前共有n种冰激凌基料和m种配料可供选购。而制作甜点需要遵循以下几条规则:必须选择一种冰激凌基料。可以添加一种或多种配料,也可......
  • 项目实战中使用枚举类enum的 values() 方法进行枚举元素匹配优化
    验证代码枚举类型publicenumOrderStatusEnum{CREATE(1),COMPLETE(10);privateintstatus;OrderStatusEnum(intstatus){this.status=status......
  • 【C语言】【枚举】口袋中有红,黄,蓝,白,黑5种颜色的球若干个。每次从口袋中先后取出3个球
    #include <stdio.h>intmain(){ enumColor{red,yellow,blue,white,black};  //声明枚举类型//  enumColori,j,k,pri;   //定义枚举变量//  intn,loo......
  • 二进制枚举模版
    模版1#include<bits/stdc++.h>usingnamespacestd;intmain(){ intn; intb[100]; cin>>n; for(inti=0;i<=n;i++)b[i]=0; while(b[0]==0){ for(inti=1;......
  • C# 中枚举的使用
    枚举定义枚举对应的值也可以直接写成10进制[Flags]publicenumDays{None=0b_0000_0000,//0Monday=0b_0000_0001,//1Tuesday=0b......
  • 道长的算法笔记:通过回溯暴力枚举
    (一)排列与组合通常通常循环来做暴力枚举是有局限性,通过回溯算法来做枚举往往会更加优雅,回溯算法中两个重要的模型便是组合模型与排列模型。题目思路描述LC......
  • 共用体和枚举类型
    描述有n个人员的数据,其中有老师和学生。学生的数据中包括姓名,号码,性别,职业,班号;老师的数据中包括:姓名,号码,性别,职业,职务。可以看出,学生和老师的数据是不同的,学生有班号而没职......
  • 枚举小例子记录
    1、创建枚举类:packagecom.atguigu.common.constant;publicclassProductConstant{publicenumAttrEnum{ATTR_TYPE_BASE(1,"基本属性"),ATTR_TYPE_SALE......