gpt4 book ai didi

java - JTextField 输入到 Double

转载 作者:行者123 更新时间:2023-12-02 10:36:19 25 4
gpt4 key购买 nike

我正在开发一个应用程序,该应用程序获取用户在文本字段中输入的快门速度。用户可以以分数“1/250”或整数的形式输入快门速度。我想从该输入将其转换为 double 类型的变量。

但是当我尝试输入“1/250”时,我收到很多错误,第一个是:

Exception in thread "AWT-EventQueue-0" java.lang.NumberFormatException: 
For input string: "1/250"

我知道这与输入中的“/”有关,但我如何将分数转换为 double ?

        JTextField userShutter = new JTextField("", 10);
userShutter.setBounds(60, 180, 50, 25);

userShutter.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
double shutter = Double.parseDouble(userShutter.getText());
baseShutterSpeed = shutter;
}
});

// Calculate shutter speed
calculator(stopValue, baseShutterSpeed);

最佳答案

您只需使用从文本字段返回的字符串,并根据/字符将其分成两部分。然后您可以使用这两个数字并将它们相除,就像使用基本数学来获得 double 一样。

String str = userShutter.getText();
String[] arr = str.split("/");

double answer = Double.parseDouble(arr[0]) / Double.parseDouble(arr[1]);
System.out.println(answer);

关于java - JTextField 输入到 Double,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53270948/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com