簡體   English   中英

我想用 java 做這個計算

[英]I want to make this calculation using java

這是方程 (input/750)*6 這里,無論我輸入什么值作為輸入,它都會除以 750,然后乘以 6 這是我為計算編寫的代碼示例

    JButton btnCalculate = new JButton("Calculate");
        btnCalculate.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                try{
                    String r=textFieldInput.getText();
                    int u=Integer.parseInt("750");
                    String z1 = r / u *6; /*on this line, i'm getting this error "The operator / is undefined for the argument type(s) String, int" */

                    textField.setText(z1);

                }catch(Exception ei) {
                    JOptionPane.showMessageDialog(null, "Invalid Input: Please Enter Number");
}

請問我從哪里去?

在行上String r = textFieldInput.getText(); 你將r定義為一個字符串,然后在String z1 = r / u *6; 你試着用它做數學運算。 您必須將r設為整數:

int r = Integer.parseInt(textFieldInput.getText());

我在你的代碼中看到的另一件事是int u = Integer.parseInt("750"); . 你可以只寫int u = 750; 或者就像你對String z1 = r / u * 6;6所做的那樣String z1 = r / u * 6; 你可以只寫String z1 = r / 750 * 6; 並且不使用變量u


最后,你不能通過數學運算直接得到一個字符串,變量z1必須是一個整數:

int z1 = r / u * 6;

或者您必須將方程轉換為字符串:

String z1 = Integer.toString(r / u * 6);

但有時結果可能是小數,而不是整數,但這段代碼會將結果四舍五入。 如果你想要十進制結果,那么你可以寫:

String z1 = Double.toString((double) r / u * 6);

(double)r從整數轉換為小數,因此您可以從該等式中獲得小數結果。


另外要注意的是,750 / 6 = 125,因此您可以將表達式簡化為:

String z1 = Integer.parseInt(r / 125);

如果您希望結果為十進制,只需編寫:

String z1 = Double.toString(r / 125.0);

125.0被視為小數,因此結果將是小數。


此代碼的最簡單形式是:

JButton btnCalculate = new JButton("Calculate");
btnCalculate.addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent e) {
        try{
            int r = Integer.parseInt(textFieldInput.getText());
            String z1 = Integer.toString(r / 125);
            //If you want the decimal result, replace the line above with:
            //String z1 = Double.toString(r / 125.0);
            textField.setText(z1);
        }catch(Exception ei) {
            JOptionPane.showMessageDialog(null, "Invalid Input: Please enter a  number.");
        }
    }
}
JButton btnCalculate = new JButton("Calculate");
btnCalculate.addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent e) {
         try{
               textField.setText(String.valueOf(Double.parseDouble(textFieldInput.getText())*0.008));
            }catch(Exception ei) {
               JOptionPane.showMessageDialog(null, "Invalid Input: Please Enter Number");
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM