我想在用户登录时创建一些东西,如果以用户身份登录,则它进入第一个模块,否则如果用户以管理员身份登录,它进入第二个模块。问题是我不知道如何使用枚举来比较用户角色。
for(int i = 0; i < staffCount; i++) {
if(username.equals(staff[i].GetStaffID()) && pass.equals(staff[i].GetPassword()) && staff[i].GetUserRole().equals("User")){
System.out.println("hello user");
}
}
Run Code Online (Sandbox Code Playgroud)
这是我在 Staff 类中的枚举声明
enum userRole{
Admin,
User
}
Run Code Online (Sandbox Code Playgroud)
这是 setter 和 getter
public void SetUserRole(userRole userRole){
this.userRole = userRole;
}
public userRole GetUserRole(){
return userRole;
}
Run Code Online (Sandbox Code Playgroud)
代替
staff[i].GetUserRole().equals("User")
Run Code Online (Sandbox Code Playgroud)
你可能是说
staff[i].GetUserRole().equals(userRole.User)
Run Code Online (Sandbox Code Playgroud)
或者
staff[i].GetUserRole() == userRole.User
Run Code Online (Sandbox Code Playgroud)
附带说明一下,根据 Java 的命名约定,枚举应该真正命名为UserRole,其值ADMIN和USER. 像这样:
enum UserRole {
ADMIN,
USER
};
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
64 次 |
| 最近记录: |