62,614
社区成员
发帖
与我相关
我的任务
分享
private String personName;
private int age;
private Sex sex; //枚举
public enum IsCheck {
MALE("男",0),FEMALE("女",1),UNKNOWN("不知道",2);
// 成员变量
private String name;
private int index;
// 构造方法
private IsCheck(String name, int index) {
this.name = name;
this.index = index;
}
/**
*
* 功能描述:根据名字取得相应枚举值
* @param name 中文值
* @return 枚举值
*/
public static IsCheck getName(String name) {
for (IsCheck c : IsCheck.values()) {
if (c.getName() == name) {
return c;
}
}
return null;
}
/**
*
* 功能描述:根据序号取得相应枚举值
* @param index 序号
* @return 枚举值
*/
public static IsCheck getName(int index) {
for (IsCheck c : IsCheck.values()) {
if (c.getIndex() == index) {
return c;
}
}
return null;
}
// get set 方法
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getIndex() {
return index;
}
public void setIndex(int index) {
this.index = index;
}
}
public static Sex getName(String name) {
for (Sex c : Sex.values()) {
if (c.getName().equals(name)) {//用equals做比较
return c;
}
}
return null;
}
竟然是这样那你在action中对Sex sex;生成的set方法可以这样做
public void setSex(String sex){
this.sex=Sex.getName(sex);//将传进来的字符串通过你的getName方法找到相应的Sex实例
}
public enum Sex {
MALE("男",0),ALLOW("女",1),UNKNOWN("不知道",2);
// 成员变量
private String name;
private int index;
// 构造方法
private Sex(String name, int index) {
this.name = name;
this.index = index;
}
/**
*
* 功能描述:根据名字取得相应枚举值
* @param name 中文值
* @return 枚举值
*/
public static Sex getName(String name) {
for (Sex c : Sex.values()) {
if (c.getName() == name) {
return c;
}
}
return null;
}
/**
*
* 功能描述:根据序号取得相应枚举值
* @param index 序号
* @return 枚举值
*/
public static Sex getName(int index) {
for (Sex c : Sex.values()) {
if (c.getIndex() == index) {
return c;
}
}
return null;
}
// get set 方法
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getIndex() {
return index;
}
public void setIndex(int index) {
this.index = index;
}
}