android獲得字串陣列中出現次數最多的字串
阿新 • • 發佈:2019-01-05
public static String findMaxString(String[] arr) { Map<Integer, String> map = new HashMap<Integer, String>(); for (int i = 0; i < arr.length - 1; i++) { int count = 0; String temp = null; for (int j = i + 1; j < arr.length; j++) { if (arr[i].equals(arr[j])) { count++; temp = arr[i]; } } //從第一個字元開始比較,每次比較完成後,將相同字元的數目和字元儲存在map中 map.put(count + 1, temp); } int[] countArr = new int[map.size()]; for (int c : map.keySet()) { for (int i = 0; i < map.size(); i++) { //將map集合的鍵儲存在陣列中 countArr[i] = c; } } Arrays.sort(countArr); int MAXCOUNT = countArr[countArr.length - 1]; String maxvalue = map.get(MAXCOUNT); String[] maxString = new String[MAXCOUNT]; for (int i = 0; i < MAXCOUNT; i++) { maxString[i] = maxvalue; } return maxvalue; }