JSpinner具有长值

时间:2014-04-23 18:45:55

标签: java long-integer jspinner

我需要一个可以处理long的JSpinner,但JSpinner只处理double和int。我确实看到一个使用double来模拟long的答案,但我需要能够准确地表示long的每个值。它是一个适用于64位中的每一位的程序,因此double和int不会这样做。

是否有可能让JSpinner使用BigInteger作为数据类型,或者我最好只使用JPanel设计我自己的JSpinner,JaxtField和两个JButton专门用于处理我的情况?现在,我倾向于后者。

1 个答案:

答案 0 :(得分:2)

正如@Aru所提到的,你可以使用SpinnerNumberModel

来完成
Long val = Long.MAX_VALUE;//set your own value, I used to check if it works
Long min = Long.MIN_VALUE;
Long max = Long.MAX_VALUE;
Long step = 1L;

SpinnerNumberModel model = new SpinnerNumberModel(val, min, max, step);
JSpinner spinner = new JSpinner(model);

请注意,您必须使用Long作为对象而非原始long