从单个字符串中按字母顺序排列列表

时间:2013-05-20 02:44:43

标签: java string sorting alphabetical

我正在尝试创建一个程序,它接受一个字符串并按字母顺序对单词进行排序,这就是我现在所拥有的,但没有任何内容正在打印出来:

System.out.println("Enter words, sepaated by commas and spaces");
      String input= scanner.next();
      String[] words= input.split(" ");
      Arrays.sort(words);
      StringBuilder zoop= new StringBuilder();
      for(int i=1; i<words.length; i++){
       zoop.append(" ");
       zoop.append(words[i]);
      }
      String sorted= zoop.toString();
      System.out.println(sorted);

3 个答案:

答案 0 :(得分:2)

Scanner scanner = new Scanner(System.in);
String input = scanner.nextLine();

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

scanner.next()仅返回下一个完整令牌。在您的情况下,它只返回第一个单词。因为for循环以1而不是0开始,所以程序没有打印任何内容。

答案 1 :(得分:1)

您有两个合作产生无输出的错误。首先,查看Scanner.next()Scanner.nextLine()之间的区别。然后实现arrays are 0-based in Java并再次查看for loop

答案 2 :(得分:0)

for(int i=1; i<words.length; i++){

应该是

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