String name = jTextField3.getText();
for(int i = 0; i <= name.length(); i++)
if (name.charAt(i) >= "0")
return false;
return false;
第一种方法应该在jTextField3中找到数字。如果有数字,那么如果不是这样,它将返回false。另一种方法,如果第一种方法== false,那么JOptionPane.showMessageDialog(这,&#34;名称不是有效&#34;);.问题是第二种方法不起作用
if (isNameValid == false)
JOptionPane.showMessageDialog(this, "Name isn't valid");
答案 0 :(得分:0)
我将假设您的整个方法看起来像这样(因为您遗漏了标题):
public boolean isNameValid()
{
String name = jTextField3.getText();
for(int i=0 ; i<=name.length() ; i++)
if ( name.charAt(i) >= 0 )
return false;
return true;
}
注意,您的方法未标记关键字static
,这意味着它是一个实例方法。看到你的调用中如何实例化或调用一个对象,我假设你可能想要编写一个类方法。要使其成为类方法,您必须更改标题:
public static Boolean isNameValid()
如果你不做static
,你需要创建一个你所在类的对象,然后用对象名称调用该方法。或者说this.isNameValid()
。
假设您将其设为类方法:
问题是您没有正确调用该方法。您应该说isNameValid
时说isNameValid()
。即使您没有任何参数,您仍然需要()
,因此IDE可以识别您正在调用方法。完成更改后,您可以通过说:
if(isNameValid())
答案 1 :(得分:0)
我不确定我是否理解你要做的事情。但是如果你想检查TextField的长度,你可以这样做:
String name = jTextField3.getText();
public boolean isNameValid(String name){
if (name.length > 0){
return true;
} else {
return false;
}
}
if (isNameValid(name)){
JOptionPane.showMessageDialog(this, "Name isn't valid");
}