【leetcode】65. (Hard) Valid Number
阿新 • • 發佈:2018-11-19
解題思路:
是後面discussion的一個答案,感覺寫的很簡潔
提交程式碼:
class Solution{
public boolean isNumber(String s) {
boolean isE=false,isDot=false,isDigit=false;
s=s.trim();
for(int i=0;i<s.length();i++) {
char c=s.charAt(i);
if(c=='e') {
if(!isDigit||isE) return false;
isDigit= false;
isE=true;
}else if(c=='+'||c=='-') {
if(i!=0&&s.charAt(i-1)!='e') return false;
}else if(c=='.'){
if(isE||isDot) return false;
isDot=true;
}else if(Character.isDigit(c)) {
isDigit=true;
}else {
return false;
}
}
return s.length()>0&& isDigit;
}
}
執行結果: