所以我想做的是:
编写用户类
用户:
到目前为止我的代码:
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;
}
}
我需要做些什么才能让它发挥作用?我不知道如何制作它所以可以选择的唯一用户类型是管理员,编辑者或用户。
答案 0 :(得分:9)
您必须将类型更改为此枚举:
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;
}
}
答案 1 :(得分:1)
因为您已经声明了一个枚举类型来表示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();
}
}