A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© roybill 中级黑马   /  2015-6-20 08:24  /  801 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

//从键盘输入6个字符串(仅仅包含英文字母和数字),对这6个字符串从小到大排列并输出结果。

6 个回复

倒序浏览
拙见:
   1) 用输入流接收,转字符,存缓冲区
   2) 字符串转字符数组
   3) 字符char 可以直接比较了
回复 使用道具 举报
我只是做出了一半,请问还有大神能解决吗?
回复 使用道具 举报
不知道是不是这样
  1. import java.io.*;
  2. import java.util.*;
  3. class TestDemomo
  4. {
  5.         public static void main(String[] args) throws IOException
  6.         {
  7.                 //定义一个集合存储字符对象,可以重复
  8.                 ArrayList<Character> al=new ArrayList<Character>();
  9.                 //获取键盘录入
  10.                 BufferedReader bufr=new BufferedReader(new InputStreamReader(System.in));
  11.                 //读取键盘录入字符串
  12.                 String line=null;
  13.                 while ((line=bufr.readLine())!=null)
  14.                 {
  15.                         //键盘录入结束标记
  16.                         if("over".equals(line))
  17.                                 break;
  18.                         //将接受到的字符串变为字符数组
  19.                         char[] chs=line.toCharArray();
  20.                         //遍历数组,遍历的过程中将字符变为字符对象存进集合
  21.                         for(char c:chs)
  22.                         {
  23.                                 //System.out.println(Character.valueOf(c));
  24.                                 al.add(Character.valueOf(c));
  25.                         }
  26.                         //给集合中的元素进行自然顺序排序
  27.                         Collections.sort(al);
  28.                         //System.out.println(ts);
  29.                         //遍历集合元素
  30.                         Iterator it=al.iterator();
  31.                         while (it.hasNext())
  32.                         {
  33.                                 //将元素变为字符串打印
  34.                                 System.out.print(it.next().toString());
  35.                         }
  36.                         System.out.println();
  37.                         //清空集合元素
  38.                         al.clear();
  39.                 }
  40.                
  41.                
  42.         }
  43. }
复制代码
回复 使用道具 举报
1 找一个可以排序的集合,比如treeset
2 将字符串一个个装入集合
3 循环集合打印
回复 使用道具 举报
TreeSet也可以吧
回复 使用道具 举报
Tangni 中级黑马 2015-6-20 22:49:18
7#
1.创建键盘录入对象,记得导包 2 .将字符串转换为字符串数组 3.Arrays类自动进行升序排序4.遍历数组
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马