枚举类型的总结

package EnumExercise;

public class Student {

private String name;

private Grade grade;

public Student(String name, Grade grade) {

super();

this.name = name;

this.grade = grade;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public Grade getGrade() {

return grade;

}

public void setGrade(Grade grade) {

this.grade = grade;

}

public static void main(String[] args) {

Student s=new Student("hu",Grade.A);

String grade="A";

//将一个字符串转换为对应的枚举 对象

Grade  g=Grade.valueOf(Grade.class, grade);

System.out.println(g.toString());

//获取 枚举的类型的所有枚举 对象

Grade  gs[]=Grade.values();

for(Grade tempG:gs){

System.out.println(tempG.toString());

}

}

}

/*JDK5之后开始使用枚举类型,其实现原理与之前相同,但是实现方便*/

enum Grade{//这是简单的枚举

A,B,C,D,E//枚举对象

}

enum Grade2{

A("100-90"),B("89-60"),C("59-40"),D("39-20"),E("20-0");//枚举对象

//枚举对象可以有属性

private String value;

private Grade2(String value){//枚举类型的构造函数必须是私有的

this.value=value;

}

public String getValue() {

return value;

}

}

//为枚举类型添加方法

enum Grade3{

A("100-90"){

public String toLocalString() {

// TODO Auto-generated method stub

return "优";

}

}

,B("89-60"){

public String toLocalString() {

// TODO Auto-generated method stub

return "良";

}

}

,C("59-40"){

public String toLocalString() {

// TODO Auto-generated method stub

return "差";

}

}

,D("39-20"){

public String toLocalString() {

// TODO Auto-generated method stub

return "很差";

}

}

,E("20-0"){

public String toLocalString() {

// TODO Auto-generated method stub

return "极其差";

}

};//枚举对象

//枚举对象可以有属性

private String value;

private Grade3(String value){//枚举类型的构造函数必须是私有的

this.value=value;

}

public String getValue() {

return value;

}

//定义一个抽象方法,然后在各自的实例对象中实现各自需要的方法

public abstract String toLocalString();

}

/*JDK5以前实现控制字段只能在固定范围之间取值的方法

class Grade {

private Grade(){

}

Grade A=new Grade();

Grade B=new Grade();

Grade C=new Grade();

Grade D=new Grade();

}

*/

时间: 2024-10-13 00:54:19

枚举类型的总结的相关文章

C#枚举类型的常用操作总结

枚举类型是定义了一组"符号名称/值"配对.枚举类型是强类型的.每个枚举类型都是从system.Enum派生,又从system.ValueType派生,而system.ValueType又从system.Object派生,所以枚举类型是指类型. 编译枚举类型时,C#编译器会把每个符号转换成类型的一个常量字段.C#编译器将枚举类型视为基元类型. 1.获取枚举列表:         /// <summary>         /// 获取枚举列表         /// <

获取枚举类型Description特性的描述信息

C#中可以对枚举类型用Description特性描述. 如果需要对Description信息获取,那么可以定义一个扩展方法来实现.代码如下: public static class EnumExtensions { public static string GetDescription(this object value) { if (value==null) return string.Empty; Type type = value.GetType(); var fieldInfo = ty

C++ Primer 笔记——枚举类型

1.和类一样,每个枚举类型定义了一种新的类型.枚举属于字面值常量类型. 2.C++包含两种枚举:限定作用域的和不限定作用域的.C++11新标准引入了限定作用域的枚举类型. enum class /*struct*/ MyEnum { A = 0}; // 限定作用域的枚举 enum class /*struct*/ MyEnum1 { A = 0 }; // 限定作用域的枚举可以有重复的名字,使用时也必须加上作用域 enum MyEnum2 { B = 0 }; // 不限定作用域的枚举 enu

笔记:枚举类型

枚举类型的定义格式如: public enum Size{ SMALL,MEDIUM,LARGE,EXTRA_LARGE} ? ? 实际上,这个声明定义了一个类 size,该类是一个特殊的类,可以定义自己的数据字段.方法.可以实现接口,也可以定义自己的构造器.但枚举类使用 enum 定义后在编译后默认继承了 java.lang.Enum 类,而不是普通的继承 Object类.Enum 声明类继承了 Serializable 和 Comparable 两个接口.且采用 enum 声明后,该类会被编

结构体 枚举类型

结构体 class Program { struct student { public int num; public string name; public string sex; public one oone; public int[] qq; } struct one { public string aa; public int bb; } static void Main(string[] args) { ////struct ////初始化结构体 //student stu = ne

C#之枚举类型

参考: http://www.cnblogs.com/an-wl/archive/2011/04/14/2015815.html 惯例先上MSDN: https://msdn.microsoft.com/zh-cn/library/cc138362(v=vs.110).aspx 枚举类型(也称为枚举)为定义一组可以赋给变量的命名整数常量提供了一种有效的方法.例如,假设您必须定义一个变量,该变量的值表示一周中的一天.该变量只能存储七个有意义的值.若要定义这些值,可以使用枚举类型.枚举类型是使用en

利用枚举类型实现统计

口袋中有5种颜色的小球,每次从口袋中任意取3个,问得到3种不同颜色的小球的可能取法? #define _CRT_SECURE_NO_WARNINGS 1 #include<iostream> #include<iomanip> using namespace std; int main() { enum color{red,yellow,blue,white,black};//声明枚举类型color color pri;    //定义color类型的变量pri int i, j,

WebService中使用枚举类型

1.在服务端编写枚举值 public enum BackWorkType { None, Test } 2.为每一个枚举值添加下面属性,添加下面属性后服务可以通过对象字符串进行序列化 [EnumMember(Value = "None")] 3.添加完后枚举变成 public enum BackWorkType { [EnumMember(Value = "None")] None, [EnumMember(Value = "Test")] Te

C# 获取与解析枚举类型的 DescriptionAttribute

原文:C# 获取与解析枚举类型的 DescriptionAttribute System.ComponentModel.DescriptionAttribute 这个 Attribute,经常被用来为属性或事件提供说明,这个说明是可以被本地化的.在一些用户界面中,就可以利用这个 Attribute 提供一些额外的信息,就像 Visual Studio 中所做的,如图 1 所示: 图 1 可以看到,对 AutoSizeMode 的说明,被显示在了下面的框中. 但是,界面中的枚举项就没这么好的待遇了

C# 枚举类型 enum (一)

1.枚举使用enum关键字来声明,与类同级.枚举可以和类并列也可以 写在类里面,不能写在方法里. 2.枚举是值类型,隐式继承自System.Enum,不能手动修改. System.Enum本身是引用类型,继承自 System.ValueType. 3.·枚举本身一般不加访问修饰符,要加的话只能是internal 或public; ·枚举都是隐式密封的(sealed),不允许作为基类派生子类. 4.枚举里面的成员只能是默认公共的静态的(public.static),不能 有访问修饰符; 5.·每种