java如何验证正负整数11位,小数6位正则表达式可以吗

java如何验证正负整数11位,小数6位正则表达式可以吗,第1张

java验证正负整数11位,小数6位,可以使用正则表达式进行匹配,如下代码:

String str = "^[0-9]{1,11}+([0-9]{1,6})$";//匹配整数11位,小数6位的正则表达式

String value = "12345678912345678";

if(valuematches(str)){

Systemoutprintln("匹配");

}else {

Systemoutprintln("不匹配");

}

import javautilScanner;

public class Test40006 {

public static void main(String[] args) {

int ri, repeat;

int temp, flag;

double eps, item, sum;

Scanner in=new Scanner(Systemin);

repeat=innextInt();

for(ri=1; ri<=repeat; ri++){

eps=innextDouble();

sum = 0;

flag = -1;

temp = 0;

while(true){

flag = -1; //正负号标志

item = 10 flag / (2 temp + 1); //一般项

if(Mathabs(item) < eps){

break;

}

temp++;

sum += item; //一般项之和

}

Systemoutprintln((int)(sum10000+05)/10000);

}

}

}

正负好判断,这个还要交就等于没入门。

小数整数不就是,多个精度。

你用"double原数"减去或加上floor("double原数"),剩下部分为0,肯定是整数无疑了。

虽然这方法有点low,但是对于初学者来说,还是挺好的例子,加油吧。

我的代码你看看

import javaawt;

import javaawtevent;

import javaxswing;

class Calculator extends JFrame implements ActionListener

{

JMenuBar menubar;

JMenu menu1,menu2;

JMenuItem item1,item2,item3,item4;

JButton numberButton[];

JButton jjccButton[];

JTextField txtResult;

JPanel p1,p2,p3;

int z;

double x, y;

StringBuffer str;

Calculator(String s)

{ super(s);

setBounds(100,100,320,310);

setVisible(true);

menubar=new JMenuBar();

menu1=new JMenu("编辑");

menu2=new JMenu("查看");

item1=new JMenuItem("复制");

item2=new JMenuItem("粘贴");

item3=new JMenuItem("标准型");

item4=new JMenuItem("科学型");

menu1add(item1);

menu1add(item2);

menu2add(item3);

menu2add(item4);

menubaradd(menu1);

menubaradd(menu2);

setJMenuBar(menubar);

numberButton=new JButton[10];

for(int i=0;i<=9;i++)

{ numberButton[i]=new JButton(""+i);}

jjccButton=new JButton[14];

jjccButton[0]=new JButton("+");

jjccButton[1]=new JButton("-");

jjccButton[2]=new JButton("x");

jjccButton[3]=new JButton("/");

jjccButton[4]=new JButton("=");

jjccButton[5]=new JButton("");

jjccButton[6]=new JButton("←");//推格

jjccButton[7]=new JButton("+/-");//正负号

jjccButton[8]=new JButton("C");//清零

jjccButton[9]=new JButton("√");

jjccButton[10]=new JButton("1/x");

jjccButton[11]=new JButton("MC");

jjccButton[12]=new JButton("MR");

jjccButton[13]=new JButton("MS");

jjccButton[8]setForeground(Colorred);

jjccButton[11]setForeground(Colorblue);

jjccButton[12]setForeground(Colorblue);

jjccButton[13]setForeground(Colorblue);

txtResult=new JTextField(19);

txtResultsetText(" ");

txtResultsetHorizontalAlignment(JTextFieldRIGHT);//文本右对齐

txtResultsetFont(new Font("TimesRoman",FontPLAIN,20));

p1=new JPanel();

p2=new JPanel();

p3=new JPanel();

p3add(txtResult);

p1setLayout(new GridLayout(4,1,2,2));// 网格布局

p2setLayout(new GridLayout(4,3,2,2));

add(p1,BorderLayoutWEST);

add(p2,BorderLayoutEAST);

add(p3,BorderLayoutNORTH);

p1add(numberButton[7]);

p1add(numberButton[8]);

p1add(numberButton[9]);

p1add(numberButton[4]);

p1add(numberButton[5]);

p1add(numberButton[6]);

p1add(numberButton[1]);

p1add(numberButton[2]);

p1add(numberButton[3]);

p1add(numberButton[0]);

p1add(jjccButton[7]);

p1add(jjccButton[5]);

p2add(jjccButton[0]);

p2add(jjccButton[1]);

p2add(jjccButton[2]);

p2add(jjccButton[3]);

p2add(jjccButton[10]);

p2add(jjccButton[9]);

p2add(jjccButton[4]);

p2add(jjccButton[6]);

p2add(jjccButton[8]);

p2add(jjccButton[11]);

p2add(jjccButton[12]);

p2add(jjccButton[13]);

for(int i=0;i<=9;i++)

{ numberButton[i]addActionListener(this);}

for(int i=0;i<=13;i++)

{ jjccButton[i]addActionListener(this);

}

txtResultaddActionListener(this);

str = new StringBuffer();

setResizable(false);

setDefaultCloseOperation(JFrameDISPOSE_ON_CLOSE);//关闭窗口

}

public void actionPerformed(ActionEvent e)

{

try

{

if (egetSource() ==jjccButton[8])//清零

{

txtResultsetText("0");

strsetLength(0);

}

else if (egetSource() == jjccButton[7])//选择正负

{

x = DoubleparseDouble(txtResultgetText()trim());

txtResultsetText("" + (-x));

}

else if (egetSource() == jjccButton[0])//+

{

x = DoubleparseDouble(txtResultgetText()trim()); //把文本区的字符串转化成Double类型,并把值赋予x,清空y的值

strsetLength(0);

y = 0;

z = 1;

}

else if (egetSource() == jjccButton[1])//-

{

x = DoubleparseDouble(txtResultgetText()trim());

strsetLength(0);

y = 0;

z = 2;

}

else if (egetSource() == jjccButton[2])//

{

x = DoubleparseDouble(txtResultgetText()trim());

strsetLength(0);

y = 0;

z = 3;

}

else if (egetSource() == jjccButton[3])// /

{

x = DoubleparseDouble(txtResultgetText()trim());

strsetLength(0);

y = 0;

z = 4;

}

else if (egetSource() ==jjccButton[4])

{

strsetLength(0);

switch (z)

{

case 1:

txtResultsetText("" + (x + y));

break;

case 2:

txtResultsetText("" + (x - y));

break;

case 3:

txtResultsetText("" + (x y));

break;

case 4:

txtResultsetText("" + (x / y));

break;

}

}

else if (egetSource() ==jjccButton[5])

{

if (txtResultgetText()trim()indexOf('') != -1)// 判断字符串中是否已经包含了小数点

{

}

else// 如果没有小数点

{

if (txtResultgetText()trim()equals("0"))// 如果初时显示为0

{

strsetLength(0);

txtResultsetText((strappend("0"+egetActionCommand()))toString());

}

else if (txtResultgetText()trim()equals(""))// 如果初时显示为空则不做任何 *** 作

{

}

else

{

txtResultsetText(strappend(egetActionCommand())toString());

}

}

y = 0;

}

else if (egetSource() ==jjccButton[9])// 求平方根

{

x = DoubleparseDouble(txtResultgetText()trim());

txtResultsetText("数字格式异常");

if (x < 0)

txtResultsetText("负数没有平方根");

else

txtResultsetText("" + Mathsqrt(x));

strsetLength(0);

y = 0;

}

else if (egetSource() ==jjccButton[10])//求倒数

{

x = DoubleparseDouble(txtResultgetText()trim());

txtResultsetText("数字格式异常");

if (x==0)

txtResultsetText("除数不能为零");

else

txtResultsetText("" +1/x);

strsetLength(0);

y = 0;

}

else if (egetSource() ==numberButton[0])// 如果选择的是"0"这个数字键

{

if (txtResultgetText()trim()equals("0"))// 如果显示屏显示的为零不做 *** 作

{

}

else

{

txtResultsetText(strappend(egetActionCommand())toString());

y = DoubleparseDouble(txtResultgetText()trim());

}

}

else// 数字键

{

txtResultsetText(strappend(egetActionCommand())toString());

y = DoubleparseDouble(txtResultgetText()trim());

}

}

catch(NumberFormatException a)

{

txtResultsetText("数字格式异常");

}

}

}

public class jisuanqi {

public static void main(String[] args) {

Calculator win=new Calculator("计算器");

}

}

以上就是关于java如何验证正负整数11位,小数6位正则表达式可以吗全部的内容,包括:java如何验证正负整数11位,小数6位正则表达式可以吗、JAVA程序问题、Java中输入一个double类型,判断他是正整数负整数正小数负小数还是0等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9788645.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存