登陆注册
14252

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

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

return false;

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

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

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

boolean hasNum = false;

}

" 0.1 " => true

start ++;

}

return false;

if(hasE || !hasNum){

}else{

}

int start = 0;

return false;

start ++;

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

指数 - "e"

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

思路:

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

numAfterE = true;

" --6 " => false

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

" 1e" => false

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

return false;

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

while(start < s.length()){

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

hasDot = true;

}

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

}

"95a54e53" => false

if(null == s){

" -90e3 " => true

"abc" => false

"-+3" => false

hasE = true;

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

return false;

boolean hasDot = false;

return false;

指数 - "e"

1、字符串中只能包含

if(!Character.isDigit(c)){

问题描述:

小数点 - "."

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

java代码:

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

public boolean isNumber(String s) {

start ++;

小数点 - "."

return hasNum && numAfterE;

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

start ++;

例如:

}

hasNum = true;

}else{

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

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

}

s = s.trim();

}

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

"e3" => false

if(hasDot || hasE){

2、第一个字符只能为

" 99e2.5 " => false

}

数字 0-9

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

}else {

"1 a" => false

hasDot = true;

char c = s.charAt(start);

" 6e-1" => true

numAfterE = false;

return false;

boolean numAfterE = false;

"0" => true

小数点 - "."

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

}

"53.5e93" => true

数字 0-9

"2e10" => true

boolean hasE = false;

数字 0-9

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