我需要转换多年的日子,这个错误阻止了我。 请帮助..现在需要通过它。 错误:二元运算符的错误操作数类型' *' 错误:result = screen * 365; ^
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class DaysOfYears extends JFrame implements ActionListener
{
JTextField screen = new JTextField(30);
JButton conBtn = new JButton("Convert");
JLabel jb = new JLabel ("");
private double result;
public DaysOfYears(){
super("Convert Your Years in Days");
setSize(400, 200);
setLayout(new FlowLayout(FlowLayout.LEFT));
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
add(screen);
add(conBtn);
add(jb);
conBtn.addActionListener(this);
}
public void actionPerformed(ActionEvent e){
result = screen * 365;
jb.setText(""+result);
}
public static void main (String[] args) {
DaysOfYears days = new DaysOfYears();
days.show(true);
}
}
答案 0 :(得分:1)
我认为您想要解析JTextField
和然后执行乘法的文本值。像,
result = Integer.parseInt(screen.getText()) * 365;
请注意,闰年有366天。
答案 1 :(得分:0)
JTextField将其内容保存为String。您需要将其转换为整数,除非您在JTextField中提供双数据类型的字符串表示。
尝试类似:
result = Integer.valueOf(screen.getText())* 365;
答案 2 :(得分:-1)
此处屏幕是JTextField
的对象,因此乘法操作不会在object
JTextField
类型上执行,您可以获取此对象的值转换它进入任何Number
类型然后尝试倍增。它会解决你的问题。
试试这个......
result = Integer.parseInt(screen.getText()) * 365;
// this will perform multiply actually. Thnak you