登陆注册
14252

什么是有效数字(有效数字的定义)

大财经2023-03-24 10:39:130

例如:

" -90e3 " => true

"e3" => false

"0" => true

小数点 - "."

start ++;

判断一个字符串是否可以解释为十进制数字,可以使用一下规则来校验:

hasDot = true;

数字 0-9

}

int start = 0;

}

}

s = s.trim();

" 6e-1" => true

}else if(s.charAt(0) == '-'){

if(s.length() == 0){

numAfterE = true;

return false;

return false;

return false;

" 0.1 " => true

问题描述:

return false;

小数点 - "."

}

if(start > 0 && s.charAt(start - 1) != 'e'){

验证给定的字符串是否可以解释为十进制数字。

if(hasDot || hasE){

hasE = true;

}else if(s.charAt(start) == '.'){

如果第一个字符为小数点,默认小数点前有一个'0'

return false;

start ++;

public boolean isNumber(String s) {

boolean numAfterE = false;

数字 0-9

"95a54e53" => false

5、字符串中最多出现一个指数 - "e",且"e"之前之后必须有数字 0-9;如果"e"之后有正/负号 - "+"/"-",必须在"e"与数字之间

boolean hasE = false;

当然,在输入中,这些字符的上下文也很重要。

指数 - "e"

}

" 1e" => false

" 99e2.5 " => false

}

}else if (!Character.isDigit(s.charAt(0))){

java代码:

"-+3" => false

" --6 " => false

}

if(!Character.isDigit(c)){

}else {

}

"abc" => false

正/负号 - "+"/"-"

数字 0-9

说明: 我们有意将问题陈述地比较模糊。在实现代码之前,你应当事先思考所有可能的情况。这里给出一份可能存在于有效十进制数字中的字符列表:

}else{

"2e10" => true

if(null == s){

while(start < s.length()){

}

3、正/负号 - "+"/"-" 只能出现在第一个字符或"e"后面

numAfterE = false;

指数 - "e"

1、字符串中只能包含

}else{

if(hasE || !hasNum){

start ++;

hasNum = true;

4、字符串中最多出现一个小数点 - ".",且"."不能出现在"e"后面

boolean hasNum = false;

"53.5e93" => true

hasDot = true;

} else if(s.charAt(start) == 'e'){

boolean hasDot = false;

return hasNum && numAfterE;

}else if(s.charAt(0) == '.'){

if(c == '+' || c == '-'){

return false;

2、第一个字符只能为

正/负号 - "+"/"-"

"1 a" => false

if(s.charAt(0) == '+'){

小数点 - "."

思路:

正/负号 - "+"/"-"

char c = s.charAt(start);

start ++;

return false;

}

0000
评论列表
共(0)条
热点
关注
推荐