0

我有一个文本文件,里面有我需要按字母顺序排列的单词。我应该采取哪些步骤来做到这一点。我知道我需要使用一个数组,然后将它们按顺序排列并打印出来,但我不确定确切的细节。另外我不知道如何读取每个单独的字符串,因为我只知道 .nextLine 它将所有字符串放在一行中。

已经为此工作了一段时间并且没有取得太大进展,任何帮助将不胜感激。

4

1 回答 1

1

您需要创建一个“全局”列表(不是数组,因为您不知道长度)来保存单词,然后读取每一行。将每一行拆分为一个单词数组,然后将它们添加到这个全局列表中。然后对这个列表进行排序。

下面是一个基本实现的例子:

Scanner scanner = new Scanner(file);
ArrayList<String> allWords = new ArrayList();
while (scanner.hasNextLine()) {
   String line = scanner.nextLine();
   String[] words = line.split(" ");
   List<String> wordList = Arrays.asList(words)
   allWords.addAll(wordList);             
}
scanner.close();
Collections.sort(allWords);

请注意,我是徒手写的,因此可能存在语法甚至逻辑错误。希望它可以为您提供基本的前进道路。另外,我没有处理异常。

希望这可以帮助。请提出更多问题,祝您 Java 学习顺利!

于 2013-10-13T23:21:08.797 回答