[英]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.