[英]How do I use Enums in getters and setters?
所以我想要做的是:
写一个User类
用户:
我的代码到目前为止:
public class User{
public String id;
public String userPermissions;
public String actualName;
public User(String username, String userType, String name){
id = username;
userPermissions = userType;
actualName= name;
}
public String getUsername(){
return id;
}
public String getUserType(){
return userPermissions;
}
public String getName(){
return actualName;
}
public enum UserType{
admin, editor, user;
}
public void setUserType(String input){
userPermissions = input;
}
}
我需要做些什么才能让它发挥作用? 我不知道如何制作它所以可以选择的唯一用户类型是管理员,编辑者或用户。
您必须将类型更改为此枚举:
public class User {
public enum UserType {
ADMIN, EDITOR, USER;
}
public String id;
public UserType userPermissions;
public String actualName;
public User(String username, UserType userType, String name) {
id = username;
userPermissions = userType;
actualName= name;
}
public String getUsername() {
return id;
}
public UserType getUserType() {
return userPermissions;
}
public String getName() {
return actualName;
}
public void setUserType(UserType input) {
userPermissions = input;
}
}
因为您已经声明了一个枚举类型来表示userType的可能值,所以您已经解决了这个问题。
如果声明UserType类型的变量,则唯一可能的值必须是已定义的枚举常量之一。
要限制setPermissions方法的输入,您所要做的就是更改为以下内容:
public class User{
public String id;
public String userPermissions;
public String actualName;
public User(String username, String userType, String name){
id = username;
userPermissions = userType;
actualName = name;
}
public enum UserType{
ADMIN, EDITOR, USER;
}
public void setUserType(UserType type){
userPermissions = type.toString();
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.