java程序中,数据验证,如何判断输入的文本框中的值是不是int型?
4个回答
展开全部
String str1=jTextField1.getText();
str1=str1.replaceAll("[0-9]","");//将所有的数字型字符替换为空
if(str1.length()==0)
System.out.println(“文本框中的值是int类型”);//文本框中的值是int类型
else
System.out.println(“文本框中的值不是int类型”);//因为有其他字母或者符号型字符的存在
//文本框中的值不能用 Integer.parseInt()
//转换为匹配的int型数据
这样楼主满意了吧,只要三行有用的代码就行了,哪三行楼主你懂的
str1=str1.replaceAll("[0-9]","");//将所有的数字型字符替换为空
if(str1.length()==0)
System.out.println(“文本框中的值是int类型”);//文本框中的值是int类型
else
System.out.println(“文本框中的值不是int类型”);//因为有其他字母或者符号型字符的存在
//文本框中的值不能用 Integer.parseInt()
//转换为匹配的int型数据
这样楼主满意了吧,只要三行有用的代码就行了,哪三行楼主你懂的
展开全部
我不知道你的意思是不是累记求和,看你的提意只是a的前次输入与这一次输入的值求和,而这一次输入又与下一次输入求和,而不是每次输入累记求和.下面是代码,我运行通过了.
import java.awt.*;
import java.awt.event.*;
import java.applet.*;
public class SubApplet extends Applet{
TextField tfa,tfb;
int a;//记录a的原值
public void init()
{
a=0;//原值初始化为0
tfa=new TextField(12);
tfb=new TextField(12);
Label la=new Label("a:");
Label lb=new Label("b:");
add(la);
add(tfa);
add(lb);
add(tfb);
tfa.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
sum();
}
});
}
public void sum()
{
int b=Integer.parseInt(tfa.getText());
tfb.setText((a+b)+"");
tfa.setText("");//清空a以便下次输入
a=b;//将当前值作为原值,以便下次输入时使用
}
public void run()
{
}
}
如果是累记求和把sum方法改成如下:
int b=Integer.parseInt(tfa.getText());
a +=b;
tfb.setText(a+"");
tfa.setText("");
OK了
import java.awt.*;
import java.awt.event.*;
import java.applet.*;
public class SubApplet extends Applet{
TextField tfa,tfb;
int a;//记录a的原值
public void init()
{
a=0;//原值初始化为0
tfa=new TextField(12);
tfb=new TextField(12);
Label la=new Label("a:");
Label lb=new Label("b:");
add(la);
add(tfa);
add(lb);
add(tfb);
tfa.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
sum();
}
});
}
public void sum()
{
int b=Integer.parseInt(tfa.getText());
tfb.setText((a+b)+"");
tfa.setText("");//清空a以便下次输入
a=b;//将当前值作为原值,以便下次输入时使用
}
public void run()
{
}
}
如果是累记求和把sum方法改成如下:
int b=Integer.parseInt(tfa.getText());
a +=b;
tfb.setText(a+"");
tfa.setText("");
OK了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
if(value instanceof int)
追问
我在文本框中取得的值是:jTextField1.getText()
if(value instanceof int)中的value就是jTextField1.getText()
一直都是出错。
追答
抱歉,我弄错了,getText()方法返回类型为String,所以不能这么判断,试试楼下那位朋友的try...catch块吧。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
try{
Integer.parseInt(jTextField1.getText());
}catch(Exception e){
// 不是int
}
------------------
if(value instanceof Integer) {
}
Integer.parseInt(jTextField1.getText());
}catch(Exception e){
// 不是int
}
------------------
if(value instanceof Integer) {
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询