參考資料:代碼隨想錄
題目鏈接:. - 力扣(LeetCode)
倒序遍歷每個數字,遇到前一個比后一個大的就減一,最后統一把后面幾位置為9
String str = n+"";char[] chars = str.toCharArray();int flag = chars.length;for (int i = chars.length-2; i >= 0; i--) {if(chars[i] > chars[i+1]){chars[i]--;flag = i + 1;}}for(int i = flag;i < chars.length;i++){chars[i] = '9';}String string = Arrays.toString(chars);string = string.replace("[", "");string = string.replace("]","");string = string.replace(",","");string = string.replace(" ","");return Integer.parseInt(string);