在Java中的Enum对象中存储字符串

用户

我有这个枚举类别,一个问题类,一个存储问题,选项,类别等的数据库。问题类具有其getter()和setter()我的问题是如何存储来自Category类型的数据库中的字符串类型数据?rs.getString(“ Cateogory”)返回一个字符串,但我想将此字符串存储在obj类型的类别中。我该怎么办?

public enum Category {
Geography,History,GK,Science;

}

public class Question  {
private int srno;
private String question;
private String option1;
private String option2;
private String option3;
private String option4;
private String correctAns;
private Category Category;
private Complexity complexity;

public Question() {
}

Class X{
    ResultSet rs=null;
    Statement stmt=null;
    List<Question> quesList=new ArrayList<Question>();
    Question q=new Question();
    Category c=null;
    // some code here .....
    while(rs.next())
    {
               q.setQuestion(rs.getString("Question"));
               q.setOption1(rs.getString("optionA"));
               q.setOption2(rs.getString("optionB"));
               q.setOption3(rs.getString("optionC"));
               q.setOption4(rs.getString("OptionD"));
               // But how do i store a Category type?
               quesList.add(q);
    }
}
尼伯(JB Nizet)

每个枚举都有一个静态valueOf()方法,该方法采用枚举常量的名称("Geography"例如),并返回对应的枚举常量(Category.Geography例如)。

所以你只需要

Category category = Category.valueOf(rs.getString(someIndex));

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章