我想创建PaliodromeChecker
,但
int length = txtInput.length();
在public void actionPerformed(ActionEvent e)
。错误是
找不到符号 - 方法长度()
我的代码是否有任何问题?
public class checker extends JFrame implements ActionListener {
private JButton btnCheck;
private JLabel lblInput, lblOutput;
private JTextField txtInput;
public Q4() {
Container c = getContentPane();
c.setLayout(new GridLayout(3,1));
JPanel p1 = new JPanel();
JPanel p2 = new JPanel();
JPanel p3 = new JPanel();
lblInput = new JLabel("Enter a word:");
lblOutput = new JLabel("Welcome to check palindrome");
btnCheck = new JButton("Check Palindrome");
txtInput = new JTextField(15);
p1.add(lblInput);
p1.add(txtInput);
p2.add(btnCheck);
p3.add(lblOutput);
c.add(p1);
c.add(p2);
c.add(p3);
btnCheck.addActionListener(this);
}
public void actionPerformed(ActionEvent e){
int length = txtInput.length();
String reverse = "";
for ( int i = length - 1 ; i >= 0 ; i-- )
reverse = reverse + txtInput.charAt(i);
if(txtInput.equals(reverse))
lblOutput.setText(txtInput.getText() + "is paliodrome");
else
lblOutput.setText(txtInput.getText() + "is not paliodrome");
}
public static void main(String[] args){
Q4 myGUI = new Q4();
myGUI.setTitle("PaliodromeChecker");
myGUI.setSize(350,150);
myGUI.setVisible(true);
}
答案 0 :(得分:0)
使用int length = txtInput.getText().length();
如有疑问,请阅读API Documentation
答案 1 :(得分:0)
您引用的字段(txtInput
)是JTextField
,没有方法length()
- 这是一个屏幕上的widdget,您期望什么?
看起来你想得到它的文字......
答案 2 :(得分:0)
你想这样做:
int length = txtInput.getText().length();
当您遇到类似问题时,您可以做的最好的事情是访问文档,请参阅JTextField
,您会得出结论,没有可以应用于<{1}}的方法length()
类型JTextField
的em> object 。
但是你会注意到存在一个名为getText()
的方法来获取组件中的文本,它返回String
,然后你就可以使用已知的length()
方法{ {1}}。
答案 3 :(得分:0)
请改为:txtInput.getText().length()
答案 4 :(得分:0)
执行以下操作
int length = txtInput.getText().length();
答案 5 :(得分:0)
您无法在JTextField上计算长度 而是在JTextField上使用getText,然后计算长度。
答案 6 :(得分:0)
int length = txtInput.getText()。length()
学会使用你的apidocs ......;)