Java 是否帮助我删除程序中的错误?

Java 是否帮助我删除程序中的错误?,java,Java,接受字符串。通过编写以下内容,可以获得s1的字符串表示形式: jt.setText(Double.toString(s1)) 现在,可以说 jt.setText(String.valueOf(s1)) 或 jt.setText(s1+) 是更好的选择,因为如果将s1重构为其他类型,两者都不需要更改 就我个人而言,我总是发现第三种选择,字符串与空字符串的连接,有点不雅观。setText方法采用的是字符串,而不是双字符串 您可以通过调用double.toString(someDouble)从doub

接受
字符串
。通过编写以下内容,可以获得
s1
字符串
表示形式:

jt.setText(Double.toString(s1))

现在,可以说

jt.setText(String.valueOf(s1))

jt.setText(s1+)

是更好的选择,因为如果将
s1
重构为其他类型,两者都不需要更改


就我个人而言,我总是发现第三种选择,字符串与空字符串的连接,有点不雅观。

setText
方法采用的是
字符串,而不是
双字符串


您可以通过调用
double.toString(someDouble)
double
中获取字符串。我认为,这个错误是不言自明的:

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
class math
{
    JFrame jf;
    JTextField jt;
    JButton jb;
    JButton jb1;
    math()
    {
        jf=new JFrame("frame");
        jf.setSize(200,200);
        jf.setVisible(true);
        jt=new JTextField(50);
        jf.setLayout(new FlowLayout());
        JButton jb=new JButton("30");
        JButton jb1=new JButton("sin");
        jb.addActionListener(new ActionListener()
        {
            public void actionPerformed(ActionEvent ae)
            {
                jt.setText("30");
            }
        });
        jb1.addActionListener(new ActionListener()
        {
            public void actionPerformed(ActionEvent ae)
            {
                String s=jt.getText();
                double x=Double.parseDouble(s);
                double s1=Math.sin(x);
                jt.setText(s1);
            }
        });
        JButton jb2=new JButton("cos");
        jf.add(jt);
        jf.add(jb);
        jf.add(jb1);
        jf.add(jb2);
    }
    public static void main(String args[])
    {
        new math();
    }
}
//its giving error that double can't be applied to jt.setText
“setText()”方法不希望参数使用double,正如您在这里给出的那样;它需要一根绳子。因此,将double转换为字符串即可:

double s1=Math.sin(x);
jt.setText(s1);
TextComponent
类的方法要求其参数的类型为
String
,因此您试图传递给它的double需要转换为字符串

改变

double s1=Math.sin(x);
jt.setText(String.valueOf(s1));


程序抛出的完全异常是什么?使用
jt.setText(s1+“”)
jt.setText(String.valueOf(s1))OP发布了一个后续问题,但它被关闭:
jt.setText(s1);
jt.setText(Double.toString(s1));