表示数值的字符串
2017-08-17 14:08
260 查看
题目:
请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。例如,字符串”+100”,”5e2”,”-123”,”3.1416”和”-1E-16”都表示数值。 但是”12e”,”1a3.14”,”1.2.3”,”+-5”和”12e+4.3”都不是。思路:
待补充代码:
public class Solution { public int i = 0; public boolean isNumeric(char[] str) { if(str == null){ return false; } if(str[i] == '+' || str[i] == '-'){ ++i; } if(i > str.length - 1){ return false; } boolean numeric = true; scanDigits(str); if(i < str.length - 1){ if(str[i] == '.'){ i++; scanDigits(str); if(i <= (str.length -1) && (str[i] == 'e' || str[i] == 'E')){ numeric= isExponential(str); } }else if(str[i] == 'e' || str[i] == 'E'){ numeric = isExponential(str); }else{ numeric = false; } } return numeric && (i > str.length - 1); } public void scanDigits(char[] str){ while(i <= (str.length -1) && str[i] >= '0' && str[i] <= '9'){ i++; } } public boolean isExponential(char[] str){ if(str[i] != 'e' && str[i] != 'E'){ return false; } ++i; if(str[i] == '+' || str[i] == '-') ++i; a275 if(i > str.length - 1){ return false; } scanDigits(str); return (i > str.length - 1) ? true : false; } }
相关文章推荐
- 《剑指offer》表示数值的字符串
- 【剑指Offer学习】【面试题54:表示数值的字符串】
- 表示数值的字符串
- 请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。例如,字符串"+100","5e2","-123","3.1416"和"-1E-16"都表示数值。 但是"12e","1a3.14","1.2.3","+-5"和"12e+4.3"都不是。
- 表示数值的字符串
- 表示数值的字符串(模拟+剑指offer)
- 表示数值的字符串java实现
- 牛客网剑指offer-表示数值的字符串
- 剑指Offer 54题 表示数值的字符串 Java版
- 表示数值的字符串
- 【剑指offer——JAVA实现】表示数值的字符串(含思路解答示意图)
- 表示数值的字符串
- 请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。例如,字符串"+100","5e2","-123","3.1416"和"-1E-16"都表示数值。 但是"12e","1a3.14","1.
- 表示数值的字符串
- 表示数值的字符串
- 实验10.3_数值显示拓展_dword型数转变为表示十进制数的字符串
- 剑指offer--面试题20:表示数值的字符串
- 字符串------表示数值的字符串
- 剑指offer-面试题54-表示数值的字符串
- 剑指offer面试题[54]-表示数值的字符串