本文收集整理关于java中验证只能输入数字的相关议题,使用内容导航快速到达。
内容导航:
Q1:Java程序怎样限制输入的只能是数字
根据这则表达式判断是否为数字,如果想要 范围是1到100 可以正则判断位数字之后,在判断其大小范围
public class aaa {
public static boolean aaa(String a){
boolean flag;
if(!a.matches("^[0-9_]+$")){//正则表达式 【匹配是否为数字
flag = false;
}else{
flag = true;
}
return flag;
}
public static void main(String [] args){
boolean flag = aaa.aaa("999");
System.out.println(flag);
flag = aaa.aaa("ss");
System.out.println(flag);
}
}
Q2:java swing 怎么设置文本框只能输入数字
java swing中利用JFormattedTextField的控件加keyReleased能实现,以下实现的只能输入数字的文本框代码:
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849importjava.text.ParseException;importjavax.swing.JFormattedTextField;importjavax.swing.JFrame;importjavax.swing.JPanel;/****@authorAdministrator*/publicclassJFormattedTextextendsJFrame{privateJFormattedTextFieldtext;publicJFormattedText(){JPanelpanel=newJPanel();text=newJFormattedTextField(newjava.text.DecimalFormat("#0"));//text=newJFormattedTextField();//text.setFormatterFactory(newjavax.swing.text.DefaultFormatterFactory(newjavax.swing.text.NumberFormatter(newjava.text.DecimalFormat("#0"))));text.setFont(newjava.awt.Font("宋体",0,12));//NOI18Ntext.setMaximumSize(newjava.awt.Dimension(50,21));text.setMinimumSize(newjava.awt.Dimension(50,21));text.setPreferredSize(newjava.awt.Dimension(50,21));//过滤输入的字符text.addKeyListener(newjava.awt.event.KeyAdapter(){publicvoidkeyReleased(java.awt.event.KeyEventevt){Stringold=text.getText();JFormattedTextField.AbstractFormatterformatter=text.getFormatter();if(!old.equals("")){if(formatter!=null){Stringstr=text.getText();try{longpage=(Long)formatter.stringToValue(str);text.setText(page+"");}catch(ParseExceptionpe){text.setText("1");//解析异常直接将文本框中值设置为1}}}}});panel.add(text);this.add(panel);this.setBounds(200,100,100,100);}publicstaticvoidmain(String[]arg){newJFormattedText().setVisible(true);}}Q3:Java编程:当用户输入不是数字时如何循环要求输入数字?
代码如下:
运行结果如下:
文字版代码如下:
import java.util.Scanner;
public class Test {
public static void main(String[] args){
Scanner in=new Scanner(System.in);
double x=0;
boolean b=true;
System.out.println("请输入整数:");
while(b){
try{
x=in.nextDouble();//如果输入的不是数字,则会抛出异常,进去catch语句块
b=false;//如果输入的是数字,则控制循环结束
}
catch(Exception e){
System.out.println("输入错误,请重新输入:");
in.nextLine();//读入回车符,确保循环可以正常进行
}
}
System.out.println("输入的数字为:"+x);
in.close();
}
}
Q4:JAVA中如何判断文本框中输入的是数字,如果输入的不是数字就弹出一个提示框。
这个是JSP页面? 是页面的话 用javascript
用个for循环 把每个字符用substring 取出来 进行判断
假设变量content=输入框的内容
for(var i=0;i
var temp=content.subString(i,i+1);
if(temp isNaN)
{
alert("不是数字");
return false;
}
}
如果是一些非b/s结构的话,看开发环境,有的本身就有一些函数用来判断是不是数字
用Java的话道理相同
我才大一 学的不多 你参考下就好
Q5:求java中,只能输入半角数字的正则表达式
用这个"^\d*",测试代码在下面
import java.util.regex.Matcher;import java.util.regex.Pattern;
public class app92 {
public static void main(String[] args) {
Pattern pt = Pattern.compile("^\d*");
Matcher mt = pt.matcher("z0123");
System.out.println("z0123:"+mt.matches());
mt=pt.matcher("123");
System.out.println("123:"+mt.matches());
mt=pt.matcher("123");
System.out.println("123:"+mt.matches());
}
}运行结果是:
z0123:false
123:true
123:false 晕倒啊,贴上来后,系统自动把全角改成半角了,测试里最后一个123是全角的
Q6:Java 限制使用者只能输入数字
Scanner i_Scanner = new Scanner(System.in);
System.out.print("请输入数字: ");
while (true) {
try {
String str = i_Scanner.next();
int a = Integer.valueOf(str);
return;
} catch (Exception e) {
System.out.println("ERROR!");
System.out.println("请重新输入:");
}
}