14.字符串排序

xiaoxiao2021-02-28  102

题目描述

编写一个程序,将输入字符串中的字符按如下规则排序。

规则1:英文字母从AZ排列,不区分大小写。

      如,输入:Type 输出:epTy

规则2:同一个英文字母的大小写同时存在时,按照输入顺序排列。

    如,输入:BabA 输出:aABb

规则3:非英文字母的其它字符保持原来的位置。

    如,输入:By?e 输出:Be?y

样例:

    输入:

   A Famous Saying: Much Ado About Nothing(2012/8).

    输出:

   A aaAAbc dFgghhiimM nNn oooos Sttuuuy (2012/8).

import java.util.*;   public class Main {     public static void main(String[] args)     {         Scanner sca = new Scanner(System.in);         while (sca.hasNext())         {             String str = sca.nextLine();             char [] cha = str.toCharArray();             StringBuffer sb = new StringBuffer();                           for (int i = 0; i<26; i++)             {                 char c = (char)(i + 'A');                 for (int j = 0; j<str.length(); j++)                 {                     if (cha[j] == c || cha[j] == (char)(c + 32))                     sb.append(cha[j]);                 }             }                           for (int k = 0; k<str.length(); k++)             {                 if (!(cha[k] >= 'A' && cha[k] <= 'Z' || cha[k] >= 'a' && cha[k] <= 'z'))                 sb.insert(k, cha[k]);             }             System.out.println(sb.toString());         }     }           }

转载请注明原文地址: https://www.6miu.com/read-32062.html

最新回复(0)