java LinkedList和RadioButton
通过单选按钮,我有一个用户所有选定答案的链接列表。 我希望在重新访问时,通过在LinkedList中选择较早的设置答案,将它们设置为选中。 如何做到这一点
selected=(String) dtmarked.get(dtqno.indexOf(queno)-1);
System.out.println("SELECTED: "+selected);
if(selected.equals("choice1"))
choice1.setSelected(true);
else if(selected.equals("choice2"))
choice2.setSelected(true);
else if(selected.equals("choice3"))
choice3.setSelected(true);
else if(selected.equals("choice4"))
choice4.setSelected(true);
我试着按照上面的snipet操作,但没有成功,即使它打印了正确的选择编号! 这是我的链接列表
public void choice()
{
if(choice1.isSelected())
{
if(dtmarked.size()!=cnt)
dtmarked.add("choice1");
else
{
dtmarked.remove(dtqno.indexOf(queno));
dtmarked.add(dtqno.indexOf(queno),"choice1");
}
}
else if(choice2.isSelected())
{
if(dtmarked.size()!=cnt)
dtmarked.add("choice2");
else
{
dtmarked.remove(dtqno.indexOf(queno));
dtmarked.add(dtqno.indexOf(queno),"choice2");
}
}
else if(choice3.isSelected())
{
if(dtmarked.size()!=cnt)
dtmarked.add("choice3");
else
{
dtmarked.remove(dtqno.indexOf(queno));
dtmarked.add(dtqno.indexOf(queno),"choice3");
}
}
else if(choice4.isSelected())
{
if(dtmarked.size()!=cnt)
dtmarked.add("choice4");
else
{
dtmarked.remove(dtqno.indexOf(queno));
dtmarked.add(dtqno.indexOf(queno),"choice4");
}
}
else
{
if(dtmarked.size()!=cnt)
dtmarked.add("0");
else
{
dtmarked.remove(dtqno.indexOf(queno));
dtmarked.add(dtqno.indexOf(queno),"0");
}
}
System.out.println(dtqno);
System.out.println(dtmarked);
}
这就是我在链表中添加选项所做的。 这里cnt也是一个返回表中条目数的变量(在本例中为5)
# 1 楼答案
您不应该使用else if,因为只有一个if/else if块被执行。只有在以下情况下才可以使用