如题,用java,别复制百度那个。注释一下,谢谢!

解决方案 »

  1.   


    public static void main(String[] args) {
    Scanner scan = new Scanner(System.in); //从控制台读取
    String  scanReverse = new StringBuilder(scan.next()).reverse().toString();//scan.next()获取输入字符串,StringBuilder自带有reverse方法
    System.out.println(scanReverse);
    }
      

  2.   


    //编写一个程序,读取键盘输入的26个英文字符,并按照逆序输出。
    import java.util.*;
    public class ArraySortChapterTest{
    public static void main(String[] args){
    Scanner reader=new Scanner(System.in);
    System.out.println("请输入26个字母:");
    String s=reader.next();
    char charLetter[]=s.toCharArray();
    System.out.println("逆序输出:");
    Arrays.sort(charLetter);
    for(int j=charLetter.length-1;j>=0;j--){
    System.out.print(charLetter[j]+" ");
    }
    }
    }
    我这个有什么缺陷?
      

  3.   

    不需要排序了。把这个去掉吧
    Arrays.sort(charLetter);
    如果你加上这个的话,是不正确的
    请输入26个字母:
    aaabbdddccdababaddff
    逆序输出:
    f f d d d d d d c c b b b b a a a a a a 看到了吧。
      

  4.   

    谢谢解答,可能我理解题目错了吧,我理解为输入从a~z26个英文字母,无论什么顺序输入,都以字母顺序的倒序输出。
    另外,我想问下,为什么不用I/O流呢,如
    InputStreamReader s=new InputStreamReader(System.in);
    BufferedReader reader=new BufferedReader(s);
      

  5.   

    一样的呀 public Scanner(InputStream source) {
            this(new InputStreamReader(source), WHITESPACE_PATTERN);
        }只不过scanner封装了比较好用,就直接拿来用呗。