@Test public void testDoPOSAndEMMCheckOfThree() { fail("Not yet implemented"); }
public int doPOSAndEMMCheckOfThree(int countInputLength, List<String> outputList , Map<String, String> wordsForest, StringBuilder stringBuilder, StringBuilder[] prefixWord , POSController posUtils, int charPosition, String textInputString){ String inputString= stringBuilder.toString(); if (StableMaps.CiThree.containsKey(inputString)){ prefixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, prefixWord[StableData.INT_ZERO].length()); prefixWord[StableData.INT_ZERO].append(inputString); outputList.add(inputString); return countInputLength; } String[] strings= new String[StableData.INT_FOUR]; strings[StableData.INT_ZERO]= String.valueOf(inputString.charAt(StableData.INT_ZERO)); strings[StableData.INT_ONE]= String.valueOf(inputString.charAt(StableData.INT_ZERO)) + inputString.charAt(StableData.INT_ONE); strings[StableData.INT_TWO]= String.valueOf(inputString.charAt(StableData.INT_ONE)) + inputString.charAt(StableData.INT_TWO); strings[StableData.INT_THREE]= String.valueOf(inputString.charAt(StableData.INT_TWO)); if (null== prefixWord[StableData.INT_ZERO]){ if (StableMaps.CiThree.containsKey(inputString)){ prefixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, prefixWord[StableData.INT_ZERO].length()); prefixWord[StableData.INT_ZERO].append(inputString); outputList.add(inputString); return countInputLength; } StringBuilder stringsBuilder= new StringBuilder(); countInputLength= doSlangPartAndPOSCheckForTwoChar(--countInputLength, outputList , stringsBuilder.append(strings[StableData.INT_ONE]), wordsForest, prefixWord, posUtils, charPosition, textInputString); return countInputLength; } if (!StableMaps.CiOne.containsKey(strings[StableData.INT_ZERO])){ StringBuilder stringsBuilder= new StringBuilder(); countInputLength= doSlangPartAndPOSCheckForTwoChar(--countInputLength, outputList , stringsBuilder.append(strings[StableData.INT_ONE]), wordsForest, prefixWord, posUtils, charPosition, textInputString); return countInputLength; } if(StableMaps.lianCi.containsKey(strings[StableData.INT_THREE])) { countInputLength = posUtils.chuLiLianCiPostFixOfThree(wordsForest, outputList, countInputLength, strings, prefixWord); return countInputLength; } if (StableMaps.lianCi.containsKey(strings[StableData.INT_ZERO])){ countInputLength = posUtils.chuLiLianCiOfThree(wordsForest, outputList, countInputLength, strings, prefixWord); return countInputLength; } if (StableMaps.jieCi.containsKey(strings[StableData.INT_ZERO])){ countInputLength = posUtils.chuLiJieCiOfThree(wordsForest, outputList, countInputLength, strings, prefixWord); return countInputLength; } if (StableMaps.zhuCi.containsKey(strings[StableData.INT_ZERO])){ countInputLength = posUtils.chuLiZhuCiOfThree(wordsForest, outputList, countInputLength, strings, prefixWord); return countInputLength; } if (StableMaps.liangCi.containsKey(strings[StableData.INT_ZERO])){ countInputLength = posUtils.chuLiLiangCiOfThree(wordsForest, outputList, countInputLength, strings, prefixWord); return countInputLength; } if (StableMaps.mingCi.containsKey(strings[StableData.INT_ZERO])){ countInputLength= posUtils.chuLiMingCiOfThree(wordsForest, outputList, countInputLength, strings, prefixWord); return countInputLength; } if (StableMaps.shiTaiCi.containsKey(strings[StableData.INT_ZERO])){ countInputLength= posUtils.chuLiShiTaiCiOfThree(wordsForest, outputList, countInputLength, strings, prefixWord); return countInputLength; } if (StableMaps.dongCi.containsKey(strings[StableData.INT_ZERO])||StableMaps.fuCi.containsKey(strings[StableData.INT_ZERO])){ if(StableMaps.zhuCi.containsKey(prefixWord[StableData.INT_ZERO].toString()) && (StableMaps.liangCi.containsKey(strings[StableData.INT_TWO]) || StableMaps.jieCi.containsKey(strings[StableData.INT_TWO]))) { countInputLength = posUtils.parserFirstCharOfThree(countInputLength, outputList, strings, prefixWord); return countInputLength; } if(StableMaps.fuCi.containsKey(strings[StableData.INT_TWO])||StableMaps.mingCi.containsKey(strings[StableData.INT_TWO]) ||StableMaps.daiCi.containsKey(strings[StableData.INT_TWO])) { countInputLength = posUtils.parserFirstCharOfThree(countInputLength, outputList, strings, prefixWord); return countInputLength; } } if (StableMaps.fuCi.containsKey(strings[StableData.INT_ZERO])){ countInputLength= posUtils.chuLiFuCiOfThree(wordsForest, outputList, countInputLength, strings, prefixWord); return countInputLength; } if(StableMaps.CiTwo.containsKey(strings[StableData.INT_ONE])) { StringBuilder stringsBuilder= new StringBuilder(); countInputLength= doSlangPartAndPOSCheckForTwoChar(--countInputLength, outputList, stringsBuilder.append(strings[StableData.INT_ONE]) , wordsForest, prefixWord, posUtils, charPosition, textInputString); return countInputLength; } outputList.add(strings[StableData.INT_ZERO]); prefixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, prefixWord[StableData.INT_ZERO].length()); prefixWord[StableData.INT_ZERO].append(strings[StableData.INT_ZERO]); return StableData.INT_ONE; }
NLPControllerImp implements NLPController { public int doPOSAndEMMCheckOfThree(int countInputLength, List<String> outputList , Map<String, String> wordsForest, StringBuilder stringBuilder, StringBuilder[] prefixWord , POSController posUtils, int charPosition, String textInputString){ String inputString= stringBuilder.toString(); if (StableMaps.CiThree.containsKey(inputString)){ prefixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, prefixWord[StableData.INT_ZERO].length()); prefixWord[StableData.INT_ZERO].append(inputString); outputList.add(inputString); return countInputLength; } String[] strings= new String[StableData.INT_FOUR]; strings[StableData.INT_ZERO]= String.valueOf(inputString.charAt(StableData.INT_ZERO)); strings[StableData.INT_ONE]= String.valueOf(inputString.charAt(StableData.INT_ZERO)) + inputString.charAt(StableData.INT_ONE); strings[StableData.INT_TWO]= String.valueOf(inputString.charAt(StableData.INT_ONE)) + inputString.charAt(StableData.INT_TWO); strings[StableData.INT_THREE]= String.valueOf(inputString.charAt(StableData.INT_TWO)); if (null== prefixWord[StableData.INT_ZERO]){ if (StableMaps.CiThree.containsKey(inputString)){ prefixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, prefixWord[StableData.INT_ZERO].length()); prefixWord[StableData.INT_ZERO].append(inputString); outputList.add(inputString); return countInputLength; } StringBuilder stringsBuilder= new StringBuilder(); countInputLength= doSlangPartAndPOSCheckForTwoChar(--countInputLength, outputList , stringsBuilder.append(strings[StableData.INT_ONE]), wordsForest, prefixWord, posUtils, charPosition, textInputString); return countInputLength; } if (!StableMaps.CiOne.containsKey(strings[StableData.INT_ZERO])){ StringBuilder stringsBuilder= new StringBuilder(); countInputLength= doSlangPartAndPOSCheckForTwoChar(--countInputLength, outputList , stringsBuilder.append(strings[StableData.INT_ONE]), wordsForest, prefixWord, posUtils, charPosition, textInputString); return countInputLength; } if(StableMaps.lianCi.containsKey(strings[StableData.INT_THREE])) { countInputLength = posUtils.chuLiLianCiPostFixOfThree(wordsForest, outputList, countInputLength, strings, prefixWord); return countInputLength; } if (StableMaps.lianCi.containsKey(strings[StableData.INT_ZERO])){ countInputLength = posUtils.chuLiLianCiOfThree(wordsForest, outputList, countInputLength, strings, prefixWord); return countInputLength; } if (StableMaps.jieCi.containsKey(strings[StableData.INT_ZERO])){ countInputLength = posUtils.chuLiJieCiOfThree(wordsForest, outputList, countInputLength, strings, prefixWord); return countInputLength; } if (StableMaps.zhuCi.containsKey(strings[StableData.INT_ZERO])){ countInputLength = posUtils.chuLiZhuCiOfThree(wordsForest, outputList, countInputLength, strings, prefixWord); return countInputLength; } if (StableMaps.liangCi.containsKey(strings[StableData.INT_ZERO])){ countInputLength = posUtils.chuLiLiangCiOfThree(wordsForest, outputList, countInputLength, strings, prefixWord); return countInputLength; } if (StableMaps.mingCi.containsKey(strings[StableData.INT_ZERO])){ countInputLength= posUtils.chuLiMingCiOfThree(wordsForest, outputList, countInputLength, strings, prefixWord); return countInputLength; } if (StableMaps.shiTaiCi.containsKey(strings[StableData.INT_ZERO])){ countInputLength= posUtils.chuLiShiTaiCiOfThree(wordsForest, outputList, countInputLength, strings, prefixWord); return countInputLength; } if (StableMaps.dongCi.containsKey(strings[StableData.INT_ZERO])||StableMaps.fuCi.containsKey(strings[StableData.INT_ZERO])){ if(StableMaps.zhuCi.containsKey(prefixWord[StableData.INT_ZERO].toString()) && (StableMaps.liangCi.containsKey(strings[StableData.INT_TWO]) || StableMaps.jieCi.containsKey(strings[StableData.INT_TWO]))) { countInputLength = posUtils.parserFirstCharOfThree(countInputLength, outputList, strings, prefixWord); return countInputLength; } if(StableMaps.fuCi.containsKey(strings[StableData.INT_TWO])||StableMaps.mingCi.containsKey(strings[StableData.INT_TWO]) ||StableMaps.daiCi.containsKey(strings[StableData.INT_TWO])) { countInputLength = posUtils.parserFirstCharOfThree(countInputLength, outputList, strings, prefixWord); return countInputLength; } } if (StableMaps.fuCi.containsKey(strings[StableData.INT_ZERO])){ countInputLength= posUtils.chuLiFuCiOfThree(wordsForest, outputList, countInputLength, strings, prefixWord); return countInputLength; } if(StableMaps.CiTwo.containsKey(strings[StableData.INT_ONE])) { StringBuilder stringsBuilder= new StringBuilder(); countInputLength= doSlangPartAndPOSCheckForTwoChar(--countInputLength, outputList, stringsBuilder.append(strings[StableData.INT_ONE]) , wordsForest, prefixWord, posUtils, charPosition, textInputString); return countInputLength; } outputList.add(strings[StableData.INT_ZERO]); prefixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, prefixWord[StableData.INT_ZERO].length()); prefixWord[StableData.INT_ZERO].append(strings[StableData.INT_ZERO]); return StableData.INT_ONE; } }
NLPControllerImp implements NLPController { public int doPOSAndEMMCheckOfThree(int countInputLength, List<String> outputList , Map<String, String> wordsForest, StringBuilder stringBuilder, StringBuilder[] prefixWord , POSController posUtils, int charPosition, String textInputString){ String inputString= stringBuilder.toString(); if (StableMaps.CiThree.containsKey(inputString)){ prefixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, prefixWord[StableData.INT_ZERO].length()); prefixWord[StableData.INT_ZERO].append(inputString); outputList.add(inputString); return countInputLength; } String[] strings= new String[StableData.INT_FOUR]; strings[StableData.INT_ZERO]= String.valueOf(inputString.charAt(StableData.INT_ZERO)); strings[StableData.INT_ONE]= String.valueOf(inputString.charAt(StableData.INT_ZERO)) + inputString.charAt(StableData.INT_ONE); strings[StableData.INT_TWO]= String.valueOf(inputString.charAt(StableData.INT_ONE)) + inputString.charAt(StableData.INT_TWO); strings[StableData.INT_THREE]= String.valueOf(inputString.charAt(StableData.INT_TWO)); if (null== prefixWord[StableData.INT_ZERO]){ if (StableMaps.CiThree.containsKey(inputString)){ prefixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, prefixWord[StableData.INT_ZERO].length()); prefixWord[StableData.INT_ZERO].append(inputString); outputList.add(inputString); return countInputLength; } StringBuilder stringsBuilder= new StringBuilder(); countInputLength= doSlangPartAndPOSCheckForTwoChar(--countInputLength, outputList , stringsBuilder.append(strings[StableData.INT_ONE]), wordsForest, prefixWord, posUtils, charPosition, textInputString); return countInputLength; } if (!StableMaps.CiOne.containsKey(strings[StableData.INT_ZERO])){ StringBuilder stringsBuilder= new StringBuilder(); countInputLength= doSlangPartAndPOSCheckForTwoChar(--countInputLength, outputList , stringsBuilder.append(strings[StableData.INT_ONE]), wordsForest, prefixWord, posUtils, charPosition, textInputString); return countInputLength; } if(StableMaps.lianCi.containsKey(strings[StableData.INT_THREE])) { countInputLength = posUtils.chuLiLianCiPostFixOfThree(wordsForest, outputList, countInputLength, strings, prefixWord); return countInputLength; } if (StableMaps.lianCi.containsKey(strings[StableData.INT_ZERO])){ countInputLength = posUtils.chuLiLianCiOfThree(wordsForest, outputList, countInputLength, strings, prefixWord); return countInputLength; } if (StableMaps.jieCi.containsKey(strings[StableData.INT_ZERO])){ countInputLength = posUtils.chuLiJieCiOfThree(wordsForest, outputList, countInputLength, strings, prefixWord); return countInputLength; } if (StableMaps.zhuCi.containsKey(strings[StableData.INT_ZERO])){ countInputLength = posUtils.chuLiZhuCiOfThree(wordsForest, outputList, countInputLength, strings, prefixWord); return countInputLength; } if (StableMaps.liangCi.containsKey(strings[StableData.INT_ZERO])){ countInputLength = posUtils.chuLiLiangCiOfThree(wordsForest, outputList, countInputLength, strings, prefixWord); return countInputLength; } if (StableMaps.mingCi.containsKey(strings[StableData.INT_ZERO])){ countInputLength= posUtils.chuLiMingCiOfThree(wordsForest, outputList, countInputLength, strings, prefixWord); return countInputLength; } if (StableMaps.shiTaiCi.containsKey(strings[StableData.INT_ZERO])){ countInputLength= posUtils.chuLiShiTaiCiOfThree(wordsForest, outputList, countInputLength, strings, prefixWord); return countInputLength; } if (StableMaps.dongCi.containsKey(strings[StableData.INT_ZERO])||StableMaps.fuCi.containsKey(strings[StableData.INT_ZERO])){ if(StableMaps.zhuCi.containsKey(prefixWord[StableData.INT_ZERO].toString()) && (StableMaps.liangCi.containsKey(strings[StableData.INT_TWO]) || StableMaps.jieCi.containsKey(strings[StableData.INT_TWO]))) { countInputLength = posUtils.parserFirstCharOfThree(countInputLength, outputList, strings, prefixWord); return countInputLength; } if(StableMaps.fuCi.containsKey(strings[StableData.INT_TWO])||StableMaps.mingCi.containsKey(strings[StableData.INT_TWO]) ||StableMaps.daiCi.containsKey(strings[StableData.INT_TWO])) { countInputLength = posUtils.parserFirstCharOfThree(countInputLength, outputList, strings, prefixWord); return countInputLength; } } if (StableMaps.fuCi.containsKey(strings[StableData.INT_ZERO])){ countInputLength= posUtils.chuLiFuCiOfThree(wordsForest, outputList, countInputLength, strings, prefixWord); return countInputLength; } if(StableMaps.CiTwo.containsKey(strings[StableData.INT_ONE])) { StringBuilder stringsBuilder= new StringBuilder(); countInputLength= doSlangPartAndPOSCheckForTwoChar(--countInputLength, outputList, stringsBuilder.append(strings[StableData.INT_ONE]) , wordsForest, prefixWord, posUtils, charPosition, textInputString); return countInputLength; } outputList.add(strings[StableData.INT_ZERO]); prefixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, prefixWord[StableData.INT_ZERO].length()); prefixWord[StableData.INT_ZERO].append(strings[StableData.INT_ZERO]); return StableData.INT_ONE; }  }
NLPControllerImp implements NLPController { public int doPOSAndEMMCheckOfThree(int countInputLength, List<String> outputList , Map<String, String> wordsForest, StringBuilder stringBuilder, StringBuilder[] prefixWord , POSController posUtils, int charPosition, String textInputString){ String inputString= stringBuilder.toString(); if (StableMaps.CiThree.containsKey(inputString)){ prefixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, prefixWord[StableData.INT_ZERO].length()); prefixWord[StableData.INT_ZERO].append(inputString); outputList.add(inputString); return countInputLength; } String[] strings= new String[StableData.INT_FOUR]; strings[StableData.INT_ZERO]= String.valueOf(inputString.charAt(StableData.INT_ZERO)); strings[StableData.INT_ONE]= String.valueOf(inputString.charAt(StableData.INT_ZERO)) + inputString.charAt(StableData.INT_ONE); strings[StableData.INT_TWO]= String.valueOf(inputString.charAt(StableData.INT_ONE)) + inputString.charAt(StableData.INT_TWO); strings[StableData.INT_THREE]= String.valueOf(inputString.charAt(StableData.INT_TWO)); if (null== prefixWord[StableData.INT_ZERO]){ if (StableMaps.CiThree.containsKey(inputString)){ prefixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, prefixWord[StableData.INT_ZERO].length()); prefixWord[StableData.INT_ZERO].append(inputString); outputList.add(inputString); return countInputLength; } StringBuilder stringsBuilder= new StringBuilder(); countInputLength= doSlangPartAndPOSCheckForTwoChar(--countInputLength, outputList , stringsBuilder.append(strings[StableData.INT_ONE]), wordsForest, prefixWord, posUtils, charPosition, textInputString); return countInputLength; } if (!StableMaps.CiOne.containsKey(strings[StableData.INT_ZERO])){ StringBuilder stringsBuilder= new StringBuilder(); countInputLength= doSlangPartAndPOSCheckForTwoChar(--countInputLength, outputList , stringsBuilder.append(strings[StableData.INT_ONE]), wordsForest, prefixWord, posUtils, charPosition, textInputString); return countInputLength; } if(StableMaps.lianCi.containsKey(strings[StableData.INT_THREE])) { countInputLength = posUtils.chuLiLianCiPostFixOfThree(wordsForest, outputList, countInputLength, strings, prefixWord); return countInputLength; } if (StableMaps.lianCi.containsKey(strings[StableData.INT_ZERO])){ countInputLength = posUtils.chuLiLianCiOfThree(wordsForest, outputList, countInputLength, strings, prefixWord); return countInputLength; } if (StableMaps.jieCi.containsKey(strings[StableData.INT_ZERO])){ countInputLength = posUtils.chuLiJieCiOfThree(wordsForest, outputList, countInputLength, strings, prefixWord); return countInputLength; } if (StableMaps.zhuCi.containsKey(strings[StableData.INT_ZERO])){ countInputLength = posUtils.chuLiZhuCiOfThree(wordsForest, outputList, countInputLength, strings, prefixWord); return countInputLength; } if (StableMaps.liangCi.containsKey(strings[StableData.INT_ZERO])){ countInputLength = posUtils.chuLiLiangCiOfThree(wordsForest, outputList, countInputLength, strings, prefixWord); return countInputLength; } if (StableMaps.mingCi.containsKey(strings[StableData.INT_ZERO])){ countInputLength= posUtils.chuLiMingCiOfThree(wordsForest, outputList, countInputLength, strings, prefixWord); return countInputLength; } if (StableMaps.shiTaiCi.containsKey(strings[StableData.INT_ZERO])){ countInputLength= posUtils.chuLiShiTaiCiOfThree(wordsForest, outputList, countInputLength, strings, prefixWord); return countInputLength; } if (StableMaps.dongCi.containsKey(strings[StableData.INT_ZERO])||StableMaps.fuCi.containsKey(strings[StableData.INT_ZERO])){ if(StableMaps.zhuCi.containsKey(prefixWord[StableData.INT_ZERO].toString()) && (StableMaps.liangCi.containsKey(strings[StableData.INT_TWO]) || StableMaps.jieCi.containsKey(strings[StableData.INT_TWO]))) { countInputLength = posUtils.parserFirstCharOfThree(countInputLength, outputList, strings, prefixWord); return countInputLength; } if(StableMaps.fuCi.containsKey(strings[StableData.INT_TWO])||StableMaps.mingCi.containsKey(strings[StableData.INT_TWO]) ||StableMaps.daiCi.containsKey(strings[StableData.INT_TWO])) { countInputLength = posUtils.parserFirstCharOfThree(countInputLength, outputList, strings, prefixWord); return countInputLength; } } if (StableMaps.fuCi.containsKey(strings[StableData.INT_ZERO])){ countInputLength= posUtils.chuLiFuCiOfThree(wordsForest, outputList, countInputLength, strings, prefixWord); return countInputLength; } if(StableMaps.CiTwo.containsKey(strings[StableData.INT_ONE])) { StringBuilder stringsBuilder= new StringBuilder(); countInputLength= doSlangPartAndPOSCheckForTwoChar(--countInputLength, outputList, stringsBuilder.append(strings[StableData.INT_ONE]) , wordsForest, prefixWord, posUtils, charPosition, textInputString); return countInputLength; } outputList.add(strings[StableData.INT_ZERO]); prefixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, prefixWord[StableData.INT_ZERO].length()); prefixWord[StableData.INT_ZERO].append(strings[StableData.INT_ZERO]); return StableData.INT_ONE; }  int doSlangPartAndPOSCheckForTwoChar(int countInputStringLength, List<String> outputList
			, StringBuilder stringBuilder, Map<String, String> wordsForest, StringBuilder[] prefixWord
			, POSController posUtils, int charPosition, String textInputString); int doPOSAndEMMCheckOfThree(int countInputLength, List<String> outputList
			, Map<String, String> wordsForest, StringBuilder stringBuilder, StringBuilder[] prefixWord
			, POSController posUtils, int charPosition, String textInputString); int doSlangCheck(int countInputStringLength, List<String> output, StringBuilder stringBuilder,
			Map<String, String> wordsForest, StringBuilder[] prefixWord, POSController posUtils, int charPosition, String textInputString); int doSlangCheckForMap(int countInputStringLength, List<String> output, StringBuilder stringBuilder
			, Map<String, String> wordsForest, StringBuilder[] prefixWord, POSController posUtils, int charPosition, String textInputString); int doSlangPartAndPOSCheckForTwoCharForMap(int countInputStringLength, Map<String, WordFrequency> outputList
			, StringBuilder stringBuilder, Map<String, String> wordsForest, StringBuilder[] prefixWord
			, POSController posUtils); int doPOSAndEMMCheckOfThreeForMap(int countInputLength, Map<String, WordFrequency> outputList
			, Map<String, String> wordsForest, StringBuilder stringBuilder, StringBuilder[] prefixWord
			, POSController posUtils); int doSlangCheckForMap(int countInputStringLength, Map<String, WordFrequency> output, StringBuilder stringBuilder
			, Map<String, String> wordsForest, StringBuilder[] prefixWord, POSController posUtils); }
NLPControllerImp implements NLPController { public int doPOSAndEMMCheckOfThree(int countInputLength, List<String> outputList , Map<String, String> wordsForest, StringBuilder stringBuilder, StringBuilder[] prefixWord , POSController posUtils, int charPosition, String textInputString){ String inputString= stringBuilder.toString(); if (StableMaps.CiThree.containsKey(inputString)){ prefixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, prefixWord[StableData.INT_ZERO].length()); prefixWord[StableData.INT_ZERO].append(inputString); outputList.add(inputString); return countInputLength; } String[] strings= new String[StableData.INT_FOUR]; strings[StableData.INT_ZERO]= String.valueOf(inputString.charAt(StableData.INT_ZERO)); strings[StableData.INT_ONE]= String.valueOf(inputString.charAt(StableData.INT_ZERO)) + inputString.charAt(StableData.INT_ONE); strings[StableData.INT_TWO]= String.valueOf(inputString.charAt(StableData.INT_ONE)) + inputString.charAt(StableData.INT_TWO); strings[StableData.INT_THREE]= String.valueOf(inputString.charAt(StableData.INT_TWO)); if (null== prefixWord[StableData.INT_ZERO]){ if (StableMaps.CiThree.containsKey(inputString)){ prefixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, prefixWord[StableData.INT_ZERO].length()); prefixWord[StableData.INT_ZERO].append(inputString); outputList.add(inputString); return countInputLength; } StringBuilder stringsBuilder= new StringBuilder(); countInputLength= doSlangPartAndPOSCheckForTwoChar(--countInputLength, outputList , stringsBuilder.append(strings[StableData.INT_ONE]), wordsForest, prefixWord, posUtils, charPosition, textInputString); return countInputLength; } if (!StableMaps.CiOne.containsKey(strings[StableData.INT_ZERO])){ StringBuilder stringsBuilder= new StringBuilder(); countInputLength= doSlangPartAndPOSCheckForTwoChar(--countInputLength, outputList , stringsBuilder.append(strings[StableData.INT_ONE]), wordsForest, prefixWord, posUtils, charPosition, textInputString); return countInputLength; } if(StableMaps.lianCi.containsKey(strings[StableData.INT_THREE])) { countInputLength = posUtils.chuLiLianCiPostFixOfThree(wordsForest, outputList, countInputLength, strings, prefixWord); return countInputLength; } if (StableMaps.lianCi.containsKey(strings[StableData.INT_ZERO])){ countInputLength = posUtils.chuLiLianCiOfThree(wordsForest, outputList, countInputLength, strings, prefixWord); return countInputLength; } if (StableMaps.jieCi.containsKey(strings[StableData.INT_ZERO])){ countInputLength = posUtils.chuLiJieCiOfThree(wordsForest, outputList, countInputLength, strings, prefixWord); return countInputLength; } if (StableMaps.zhuCi.containsKey(strings[StableData.INT_ZERO])){ countInputLength = posUtils.chuLiZhuCiOfThree(wordsForest, outputList, countInputLength, strings, prefixWord); return countInputLength; } if (StableMaps.liangCi.containsKey(strings[StableData.INT_ZERO])){ countInputLength = posUtils.chuLiLiangCiOfThree(wordsForest, outputList, countInputLength, strings, prefixWord); return countInputLength; } if (StableMaps.mingCi.containsKey(strings[StableData.INT_ZERO])){ countInputLength= posUtils.chuLiMingCiOfThree(wordsForest, outputList, countInputLength, strings, prefixWord); return countInputLength; } if (StableMaps.shiTaiCi.containsKey(strings[StableData.INT_ZERO])){ countInputLength= posUtils.chuLiShiTaiCiOfThree(wordsForest, outputList, countInputLength, strings, prefixWord); return countInputLength; } if (StableMaps.dongCi.containsKey(strings[StableData.INT_ZERO])||StableMaps.fuCi.containsKey(strings[StableData.INT_ZERO])){ if(StableMaps.zhuCi.containsKey(prefixWord[StableData.INT_ZERO].toString()) && (StableMaps.liangCi.containsKey(strings[StableData.INT_TWO]) || StableMaps.jieCi.containsKey(strings[StableData.INT_TWO]))) { countInputLength = posUtils.parserFirstCharOfThree(countInputLength, outputList, strings, prefixWord); return countInputLength; } if(StableMaps.fuCi.containsKey(strings[StableData.INT_TWO])||StableMaps.mingCi.containsKey(strings[StableData.INT_TWO]) ||StableMaps.daiCi.containsKey(strings[StableData.INT_TWO])) { countInputLength = posUtils.parserFirstCharOfThree(countInputLength, outputList, strings, prefixWord); return countInputLength; } } if (StableMaps.fuCi.containsKey(strings[StableData.INT_ZERO])){ countInputLength= posUtils.chuLiFuCiOfThree(wordsForest, outputList, countInputLength, strings, prefixWord); return countInputLength; } if(StableMaps.CiTwo.containsKey(strings[StableData.INT_ONE])) { StringBuilder stringsBuilder= new StringBuilder(); countInputLength= doSlangPartAndPOSCheckForTwoChar(--countInputLength, outputList, stringsBuilder.append(strings[StableData.INT_ONE]) , wordsForest, prefixWord, posUtils, charPosition, textInputString); return countInputLength; } outputList.add(strings[StableData.INT_ZERO]); prefixWord[StableData.INT_ZERO].delete(StableData.INT_ZERO, prefixWord[StableData.INT_ZERO].length()); prefixWord[StableData.INT_ZERO].append(strings[StableData.INT_ZERO]); return StableData.INT_ONE; }  int doSlangPartAndPOSCheckForTwoChar(int countInputStringLength, List<String> outputList
			, StringBuilder stringBuilder, Map<String, String> wordsForest, StringBuilder[] prefixWord
			, POSController posUtils, int charPosition, String textInputString); int doPOSAndEMMCheckOfThree(int countInputLength, List<String> outputList
			, Map<String, String> wordsForest, StringBuilder stringBuilder, StringBuilder[] prefixWord
			, POSController posUtils, int charPosition, String textInputString); int doSlangCheck(int countInputStringLength, List<String> output, StringBuilder stringBuilder,
			Map<String, String> wordsForest, StringBuilder[] prefixWord, POSController posUtils, int charPosition, String textInputString); int doSlangCheckForMap(int countInputStringLength, List<String> output, StringBuilder stringBuilder
			, Map<String, String> wordsForest, StringBuilder[] prefixWord, POSController posUtils, int charPosition, String textInputString); int doSlangPartAndPOSCheckForTwoCharForMap(int countInputStringLength, Map<String, WordFrequency> outputList
			, StringBuilder stringBuilder, Map<String, String> wordsForest, StringBuilder[] prefixWord
			, POSController posUtils); int doPOSAndEMMCheckOfThreeForMap(int countInputLength, Map<String, WordFrequency> outputList
			, Map<String, String> wordsForest, StringBuilder stringBuilder, StringBuilder[] prefixWord
			, POSController posUtils); int doSlangCheckForMap(int countInputStringLength, Map<String, WordFrequency> output, StringBuilder stringBuilder
			, Map<String, String> wordsForest, StringBuilder[] prefixWord, POSController posUtils);  }