登陆注册
14252

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

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

start ++;

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

问题描述:

boolean hasNum = false;

public boolean isNumber(String s) {

while(start < s.length()){

}

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

"-+3" => false

"e3" => false

numAfterE = true;

" 99e2.5 " => false

return false;

指数 - "e"

hasE = true;

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

数字 0-9

" 0.1 " => true

2、第一个字符只能为

"1 a" => false

return false;

" --6 " => false

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

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

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

hasNum = true;

char c = s.charAt(start);

if(hasE || !hasNum){

}

}else {

s = s.trim();

数字 0-9

return false;

}

小数点 - "."

"95a54e53" => false

}

return false;

if(null == s){

例如:

if(!Character.isDigit(c)){

java代码:

小数点 - "."

}

numAfterE = false;

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

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

}

思路:

start ++;

"abc" => false

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

boolean hasDot = false;

"53.5e93" => true

return false;

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

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

}

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

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

1、字符串中只能包含

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

}else{

" 1e" => false

小数点 - "."

}else{

}

start ++;

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

" 6e-1" => true

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

return hasNum && numAfterE;

boolean hasE = false;

return false;

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

"2e10" => true

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

"0" => true

数字 0-9

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

指数 - "e"

hasDot = true;

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

hasDot = true;

start ++;

}

if(hasDot || hasE){

" -90e3 " => true

int start = 0;

}

return false;

boolean numAfterE = false;

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