public class Solution {
public boolean isNumber(String s) {
//e代表10的多少次方
int start=0,end=s.length()-1;
while(start<end&&s.charAt(start)==' ') start++;
while(start<end&&s.charAt(end)==' ') end--;
if(end-start==0&&(s.charAt(start)>'9'||s.charAt(start)<'0')) return false;//只有一个元素
if((s.charAt(start)=='+'||s.charAt(start)=='-')){
if(end-start==1&&s.charAt(end)=='.') return false;
start++;
}
int p=-1,e=-1;
for(int i=start;i<=end;i++){
char c=s.charAt(i);
if(c=='e'){
if(e==-1) e=i;//看e是否出现过,出现过把index给e
else return false;
}
if(c=='.'){
if(p==-1) p=i;
else return false;
}
if(start==e||end==e) return false;
if(p>e&&e!=-1) return false;
if(start==p&&start+1==e) return false;
if((c>'9'||c<'0')&&c!='.'&&c!='e'){
if((c=='+'||c=='-')&&i-1==e&&i!=end){}
else return false;
}
}
return true;
}
}
65. Valid Number
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- Validate if a given string is numeric. Some examples:"0" ...