随意输入一个字符串,输出每个字母的个数,并将输入的字符串按照小写字母、大写字母、数字的排序重新输出(用java语言编写)

该博客介绍了一个使用Java编程实现的功能,统计输入字符串中每个字母(区分大小写)、数字的出现次数,并按特定顺序(小写字母、大写字母、数字)重新排列字符串。
import java.util.*;

public class zifuchuan{

         public int[] GetcharCount(String str)

{      int[] char_count=new int[62];

       for(int i=0;i<char.count.length;i++)

      char_count[i]=0;

      char[] char_set=str.to.charArray();

      for(int i=0;i<char.set.length;i++)

      char temp=char_set[i];

      if(temp>='a'  &&  temp<='z')

         { char_count[temp-'a']=char_count[temp-'a']+1; }  //以小写字母为参照点

     if(temp>='A'  &&  temp<='Z')

        { char_count[temp-'A'+26]=char_count[temp-'A'+26]+1; }  //小写字母一共有26个

     if(temp>='0'  &&  temp<='9')

        { char_count[temp-'0'+52]=char_count[temp-'A'+52]+1; }  //小写字母加大写字母一共有52个

}              return char_count;

}

     public void Getoutput(int [] count){

              for(int i=0;i<count.length;i++)

                  {  if(count[i]!=0)//如果这个字符存在

                      {if(i>=26  &&  i<=52)

                         System.out.println((char)(i-26+'A')+''."+count[i]);   //输出大写字母

                      else

                             if(i>=52)

                          System.out.println((char)(i-52+'0')+''."+count[i]); //输出数字

                     else

                            System.out.println((char)(i+'a')+''."+count[i]);  //输出小写字符

                      }

                }

        }

       public string stringsort(int[]  count){

        String result=" ";

       for(int i=0;i<count.length;i++)

      { if(count[i]!=0)

          if(i>=26  &&  i<=52)

            {  for(int j=0;j<count[i];j++)

                   result=result+(char)(i-26+'A');

             }

            else if(i<26)

                  {           for(int j=0;j<count[i];j++)

                               result=result+(char)(i+'a');

                              else

                                {  for(int j=0;j<count[i];j++)

                                   result=result+(char)(i-52+'0'); 

                                }

                  }

       }

       return result;

}

public static void main(String[] args){

            zifuchuan test=new zifuchuan();

           Scanner scan=new Scanner(System.in);

           System.out.print("请输入字符串");

           String input=scan.nextLine();

           int[] count=test.GetcharCount(input);

           test.Getoutput(count);

           String ret=test.stringsort(count);

           System.out.println("排序结果"+ret);

      }

}

 

             

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值