java判断小数
❶ java判断是否是整数,小数或实数的正则表达式
如果是整数: ^[+-]?\\d+$
如果是小于1的小数: ^[+-]?0\\.\\d+?$
如果是任意浮点: ^[+-]?\\d+(\\.\\d+)?$
如果是精确至小数点3位的浮点: ^[+-]?\\d+(\\.\\d{1,3})?$
如果是16进制整数: ^[+-]?[\\da-fA-F]+$
❷ java判断是否是精确到2位的数字
实现思路:先获取到小数点后面的值,之后判断长度是不是两位,是的话,表示符合条件:
if ("1231312.12".split("\.")[1].length()==2)
{
System.out.println("是两位小数");
}
解释: 先通过“.”截取数值为两部分(整数部分和小时部分),之后取到小数部分,并获取到长度,之后和2比较即可。
❸ 求教java中如何判断一个数是不是小数,求详细代码及解释
importjava.util.regex.Matcher;
importjava.util.regex.Pattern;
publicclassTest13{
publicstaticvoidmain(String[]args){
System.out.println(isPositiveDecimal("-0.9"));
System.out.println(isPositiveDecimal("0.9"));
System.out.println(isNegativeDecimal("-0.9"));
System.out.println(isNegativeDecimal("0.9"));
}
(Stringorginal){
returnisMatch("\+{0,1}[0]\.[1-9]*|\+{0,1}[1-9]\d*\.\d*",orginal);
}
(Stringorginal){
returnisMatch("^-[0]\.[1-9]*|^-[1-9]\d*\.\d*",orginal);
}
privatestaticbooleanisMatch(Stringregex,Stringorginal){
if(orginal==null||orginal.trim().equals("")){
returnfalse;
}
Patternpattern=Pattern.compile(regex);
MatcherisNum=pattern.matcher(orginal);
returnisNum.matches();
}
}
❹ java怎么判断是否是小数
1,^\\d+$ 是判断位正整数的
^\\d+\\.\\d+$
2,判断是否位正小数
-\\d+$:
3,判断是否位负整数
你代码里这三个用 “ | ”(或)运算符连接,表示只要是整数或者是正的小数就是true了。
4,另外可以加一句
^-\\d+\\.\\d+$ 判断是否位负的小数
按照你的要求:
Pattern pattern = Pattern.compile("^\\d+$|-\\d+$"); // 就是判断是否为整数
Pattern pattern = Pattern.compile("\\d+\\.\\d+$|-\\d+\\.\\d+$");//判断是否为小数
❺ java 判断整数还是小数
publicclassTest{
publicstaticvoidmain(String[]args){
Scannerscanner=newScanner(System.in);
doublenum=0.00;
try{
System.out.println("请输入数字");
num=scanner.nextDouble();
}catch(Exceptione){
System.out.println("请输入正确的数字格式");
scanner.close();
return;
}
StringnumString=num+"";
inta=numString.indexOf(".");
StringnumAfter=numString.substring(a+1,numString.length());
char[]nums=numAfter.toCharArray();
for(inti=0;i<nums.length;i++){
if(nums[i]!='0'){
System.out.println(num+"不是整数");
scanner.close();
return;
}
}
System.out.println(num+"是整数");
scanner.close();
}
}
❻ java判断有没有小数点
强制转成整数,对比原数,,,,或 转成字符串,再查找.字符
~~~~~~~~~
❼ JAVA如何检查小数位
看看这样满足要求吗? 可以根据自己的需求添加相应的判断。 多加思考! package cn.com.storm.common.test; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class Test { private final static int NUMBER_COUNT = 3; public static void main(String[] args) { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); System.out.println("请输入一个数字(小数点不能超过" + NUMBER_COUNT + "位):"); try { String line = br.readLine(); // 输入数据的格式判断 if (line.startsWith("0") || line.endsWith(".")) { System.out.println("你输入的数据格式不正确!"); } else { // 输入数据转化成Double类型 try { Double.valueOf(line); int length = line.length() - line.lastIndexOf(".") - 1; // 判断小数点是否超过 if (length > NUMBER_COUNT) { System.out.println("小数点超过" + NUMBER_COUNT + "位!"); } else { System.out.println("输入正确!"); } } catch (NumberFormatException ex) { System.out.println("你输入的数据不是数字!"); } } } catch (IOException e) { System.out.println("读取数据时发生错误:" + e.getMessage()); } } }
❽ 求教java中如何判断一个数是不是小数,求详
可以转化成String,然后判断里面有没有小数点,如果有,就是小数,没有就不是小数。
publicclassJudgeNumber{
(Stringnum){
booleanisdecimal=false;
if(num.contains(".")){
isdecimal=true;
}
returnisdecimal;
}
publicstaticvoidmain(String[]args){//测试的main方法
intnum1=34;
doublenum2=67.8;
booleanis1=judgeIsDecimal(String.valueOf(num1));
booleanis2=judgeIsDecimal(String.valueOf(num2));
System.out.println(is1);//fasle
System.out.println(is2);//true
}
}
❾ java中String数组类型小数点后的位数如何判断
public static String dealStr(String s){
int index = s.lastIndexOf(".");//寻找小数点的索引位置,若不是小数,则为-1
if(index > -1) {
int len = s.substring(index + 1).length();//取得小数点后的数值,不包括小数点
s += len == 1 ? "0" : "";
}
return s;
}