【Java开源代码栏目提醒】:文章导读:在新的一年中,各位网友都进入紧张的学习或是工作阶段。网学会员整理了Java开源代码-TextEnumeration.java的相关内容供大家参考,祝大家在新的一年里工作和学习顺利!
package com.zf.s11;//创建一个类
public class TextEnumeration {//操作枚举的类
static enum RESULT{YES,NO,UNKOWN,};
static enum Type{
MANAGER("经理",5000),
ASSISTANT("助理",3000),
WORKER("员工",1000);
private String name;//只能在枚举值的后面
private double pay;
Type(String name,double pay){//带参数的构造方法
this.name=name;
this.pay=pay;
}
}
enum Person{
CHINESE("中国人"){
public String toString(){//返回对应值
return "这是个中国人";
}},
AMERICAN("美国人"),
ENGLISHMAN("英国人"){//返回对应值
public String toString(){
return "这是个英国人";
}},
OTHERS{
public String toString(){//返回对应值
return "这是个其他国家的人";
}};
private String value = null; // 枚举值的value属性,只能声明在枚举值的后面
Person(){// 默认构造方法
value = "其他人";
}
Person(String value){// 带参数的构造方法
this.value = value;
}
public String getValue(){//获得value值
return this.value;
}
}
static class Human{//创建静态内部类
public Human(String humanName,Type type){//带参数构造方法
this.humanName=humanName;
this.type=type;
}
private String humanName;//人员名称
private Type type;//人员类型
public String getHumanName() {
return humanName;
}
public void setHumanName(String humanName) {
this.humanName = humanName;
}
public Type getType() {
return type;
}
public void setType(Type type) {
this.type = type;
}
}
public static void displayResult(){//操作RESULT枚举
System.out.printf("RESULT.YES.toString():\t%s %n",
RESULT.YES.toString());//返回枚举变量的名称
System.out.printf("RESULT.YES.ordinal():\t%s %n",
RESULT.YES.ordinal());//返回枚举位置
System.out.printf("RESULT.YES.getClass():\t%s %n",
RESULT.YES.getClass());//返回枚举变量的类信息
System.out.println("遍历Set枚举的元素");
for(RESULT result: RESULT.values()){//循环遍历枚举变量
System.out.printf("%s,\t",result);
}
switch(RESULT.YES){//进行枚举判断
case YES:
System.out.println("显示结果:"+RESULT.YES);
break;
case NO:
System.out.printf("显示结果:"+RESULT.YES);
break;
default:
System.out.println("未知!");
}
}
public static void displayType(){//操作Type枚举
Human human1=new Human("Susan",Type.MANAGER);//实例化对象并实始化
Human human2=new Human("Lingda",Type.ASSISTANT);
Human human3=new Human("Lisa",Type.WORKER);
System.out.printf(":%1$s,\t职业%2$s,\t薪水:%3$s %n",human1.getHumanName(),human1.getType().name,human1.getType().pay);
System.out.printf(":%1$s,\t职业%2$s,\t薪水:%3$s %n",human2.getHumanName(),human2.getType().name,human2.getType().pay);
System.out.printf(":%1$s,\t职业%2$s,\t薪水:%3$s %n",human3.getHumanName(),human3.getType().name,human3.getType().pay);
}
public static void displayPerson(){//操作Person枚举
Person person=Person.CHINESE;
System.out.printf("person.toString():%s%n",person);//CHINESE枚举值覆盖toString()方法
person=Person.ENGLISHMAN;//
System.out.printf("person.toString():%s%n",person);//ENGLISHMAN枚举值覆盖toString()方法
person=Person.OTHERS;
System.out.printf("调用getValue():%s%n",person.getValue());//调用枚举方法
}
public static void main(String []args){//java程序主入口处
System.out.println("1.显示RESULT枚举信息");
displayResult();//调用方法显示RESULT枚举信息
System.out.println("2.显示Type枚举信息");
displayType();//调用方法显示Type枚举信息
System.out.println("3.显示Person枚举信息");
displayPerson();//调用方法显示Person枚举信息
}
}
上一篇:
TextEncapsulation.java
下一篇:
法律专业开题报告范文