登陆注册
14252

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

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

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

" --6 " => false

}else{

数字 0-9

" -90e3 " => true

}

char c = s.charAt(start);

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

return false;

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

int start = 0;

hasDot = true;

}

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

}else {

return false;

指数 - "e"

return false;

start ++;

}

s = s.trim();

}

小数点 - "."

public boolean isNumber(String s) {

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

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

" 0.1 " => true

start ++;

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

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

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

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

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

" 1e" => false

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

" 6e-1" => true

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

"2e10" => true

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

}

}

return false;

}

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

" 99e2.5 " => false

numAfterE = true;

return hasNum && numAfterE;

boolean numAfterE = false;

return false;

start ++;

if(!Character.isDigit(c)){

}else{

numAfterE = false;

小数点 - "."

boolean hasDot = false;

boolean hasNum = false;

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

start ++;

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

if(hasE || !hasNum){

思路:

return false;

}

hasE = true;

"1 a" => false

if(null == s){

hasNum = true;

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

"53.5e93" => true

hasDot = true;

问题描述:

数字 0-9

指数 - "e"

"0" => true

例如:

}

"95a54e53" => false

if(hasDot || hasE){

2、第一个字符只能为

java代码:

"abc" => false

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

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

1、字符串中只能包含

return false;

数字 0-9

"e3" => false

"-+3" => false

}

while(start < s.length()){

boolean hasE = false;

小数点 - "."

0000
评论列表
共(0)条
  • 抢沙发,发首评,稳占C位!
0
10
  • 10
  • 20
  • 30
  • 40
  • 50
  • 100
条 / 页
/ 0
热点
关注
推荐