首页 > 代码库 > 54题
54题
请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。例如,字符串"+100","5e2","-123","3.1416"和"-1E-16"都表示数值。 但是"12e","1a3.14","1.2.3","+-5"和"12e+4.3"都不是。
public class Solution54 { private static int index=0; public boolean isNumeric(char[] str) { if(str.length > 0){ index= 0; if(str[index] == ‘-‘ || str[index] == ‘+‘){ index ++; } if(index < str.length){ index = zhengshu(str); if(index == str.length)return true; if(str[index] == ‘.‘){ index ++; if(index ==str.length) return false; index = zhengshu(str); if(index == str.length)return true; if(str[index] == ‘.‘)return false; else if(str[index] == ‘e‘ || str[index] == ‘E‘){ index ++; if(index == str.length) return false; if(str[index] == ‘+‘ || str[index] == ‘-‘){ index ++; } if(index == str.length) return false; index = zhengshu(str); if(index ==str.length) return true; }else{ if(index == str.length)return true; else return false; } }else if(str[index] == ‘e‘ || str[index] == ‘E‘){ index ++; if(index == str.length) return false; if(str[index] == ‘+‘ || str[index] == ‘-‘){ index ++; } if(index == str.length) return false; index = zhengshu(str); if(index ==str.length) return true; } return false; } } return false; } private static int zhengshu(char[] str) { while(index < str.length && str[index] >=‘0‘ && str[index]<=‘9‘){ index ++; } return index; } }
54题
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。