当前位置: 代码迷 >> Eclipse >> 大家伙儿都来思考一下,别看他是一个小程序
  详细解决方案

大家伙儿都来思考一下,别看他是一个小程序

热度:6   发布时间:2016-04-23 14:08:05.0
大家都来思考一下,别看他是一个小程序
将java所有关键字保存在一个字符串数组中,对其按升序排序,在采用顺序查找法或二分法查找,判断一个字符串是否是java关键字

------解决方案--------------------
Java code
String testStr = "xxxx";String[] keywords = {"abstract", "class", ...}; //关键字数组Arrays.sort(keywords);//顺序查找for (String keyword : keywords) {     if (keyword.equals(testStr)) {return true;}}return false;//2分查找int left = 0, right = keywords.length-1;int c = (left+right)/2;while (left < right) {    String keyword = keywords[c];    if (keyword.compareTo(testStr) == 0) return true;    else if (keyword.compareTo(testStr) > 0) {        right = c-1;    } else {        left = c+1;    }    c = (left+right)/2;}return false;
------解决方案--------------------
排序是按字符串比较来排序的,具体可以看看String的compareTo方法,一般按字符的ascii码比较,然后按字符串长度比较
代码例子可以看看2L