我正在使用文本字段工作 我制作了一个程序,其中用户在文本字段中输入 i 并将其转换为 int i 但问题是当用户输入 i 它不会转换为 int i。条件无法正常工作为什么会这样。
public class A extends JFrame{
private JTextField entervar;
private JButton button;
public A(){
getContentPane().setLayout(null);
entervar = new JTextField();
entervar.setToolTipText("variable must be 'i'");
entervar.setBounds(37,26,89,28);
getContentPane().add(entervar);
button = new JButton("Click");
button.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
String p = entervar.getText();
try {
int i;
if ( p.equals("i") ) {
i = Integer.parseInt(p);
}
}
catch (Exception e) {
JOptionPane.showMessageDialog (null, "Enter Variable Must be i");
}
}
});
button.setBounds(108,121,89,28);
getContentPane().add(button);
setSize(400,400);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLocationRelativeTo(null);
setVisible(true);
}
}
主要内容:
public class Main {
public static void main(String[] args) {
A obj = new A();
}
}
最佳答案
p.equals("i")
表示用户在文本字段中输入“i”。所以它不能转换为数字“i”不是数字。
了解 JFormattedTextField .可以为int设置NumberModel,直接获取整数。
关于Java:TextField 不转换为整数变量 i,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30818620/