题解 | #字符串排序#

字符串排序

https://www.nowcoder.com/practice/5190a1db6f4f4ddb92fd9c365c944584

import java.util.*;

public class Main {
    public static void main(String[] args) {
        Scanner fzhinput = new Scanner(System.in);
        String zfc = fzhinput.nextLine();
        ArrayList<Character> zm = new ArrayList<>();
        for (char i : zfc.toCharArray()) {
            if (Character.isLetter(i)) {
                zm.add(i);
            }
        }
        Collections.sort(zm, new Comparator <Character>() {
            @Override
            public int compare(Character zm1, Character zm2) {
                int sz = Character.toLowerCase(zm1)-Character.toLowerCase(zm2);
                if(sz!=0){
                    return sz;
                }
                else{
                    return 0;
                }
                
            }
        });

        StringBuilder stack = new StringBuilder();
        int sy=0;

        for(char c : zfc.toCharArray()){
            if(Character.isLetter(c)){
                stack.append(zm.get(sy++));
            }
            else{
                stack.append(c);
            }
        }
        System.out.println(stack.toString());
        




    }
}

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务