2014-08-27 127 views
-2

我有一个非常基本的问题要使用哪种数据类型?

说我在前端有3个单选按钮,我想获取值并存储在某种数据类型中。现在,一次只能设置其中一个单选按钮。什么是最有效的方法来设置和获取值来知道哪个单选按钮被启用?我应该使用哪种数据类型?

+1

查找[ButtonGroup的与.getSelection()](HTTP:// docs.oracle.com/javase/7/docs/api/javax/swing/ButtonGroup.html#getSelection())http://docs.oracle.com/javase/tutorial/uiswing/components/button.html – 2014-08-27 15:58:56

回答

0

你在哪里“存储”它?

您可以在程序代码中使用enum。但是您仍然可能会将其作为序号(意思就是1,2,3等)或字符串保存在数据库中。我个人更喜欢字符串,因为没有任何值的变化没有对齐。例如,如果您重新排序枚举(在代码中执行简单操作)并且不更改数据库中的所有值,那么当您再次检索它们时,它可能会错误地映射。

在Java中,枚举是可以实现接口的复杂类型,因此您可以依赖该功能来获取显示值等内容。

所以,答案很简单:在代码

  • 枚举
  • 数据库
1

如果您使用的Swing个JRadioButton,你可以使用setActionCommand每个按钮的字符串关联(字符串)并使用ButtonGroup.getSelection()。getActionCommand()获取选定的字符串。

一组单选按钮基本上就像一个单个选择的字符串数组。

+0

+ 1 - 打我。使用'ButtonGroup'几乎是预期的约定。 – 2014-08-27 15:58:16

+0

我很担心使用字符串,因为每个单选按钮都会有3个字符串。但实际上,我们只需要为启用的单选按钮需要1个“真”值。是不是使用BitSet更高效?假设我们有100个无线电选项(假设)使用字符串是否是一个好主意? – 2014-08-27 16:02:48

+0

你甚至可以自己使用JRadioButton实例。作为一般规则,我会说,如果您可以创建100个单选按钮,那么创建100个字符串也不会有问题,所以使用字符串非常安全。 – J4v4 2014-08-27 16:10:07

0

字符串将是很好的,如单选按钮的情况下,只使用一个将被激活一次,因此它可以被存储在一个字符串