Java问题:编写一个程序,从文本文件读取英语单词,并按字母的升序显示所有的单词(可以重复),假设文本文件为纯英语单词文件,单词间用空格分隔
时间: 2024-10-08 18:08:26 浏览: 26
在Java中,你可以使用`BufferedReader`和`ArrayList`来实现这个程序。首先,你需要创建一个函数来读取文件并解析单词,然后将单词添加到排序后的列表中。下面是一个简单的示例:
```java
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Collections;
public class WordSorter {
public static void main(String[] args) {
String filePath = "english_words.txt"; // 文件路径
ArrayList<String> words = new ArrayList<>();
try (BufferedReader reader = new BufferedReader(new FileReader(filePath))) {
String line;
while ((line = reader.readLine()) != null) {
String[] wordArray = line.split("\\s+");
for (String word : wordArray) {
words.add(word);
}
}
Collections.sort(words); // 对单词进行排序
for (String word : words) {
System.out.println(word);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
在这个例子中,我们假设文件路径为"english_words.txt",并且所有单词由空格分隔。程序会逐行读取文件,将每一行分割成单词数组,然后添加到`words`列表中。最后,我们使用`Collections.sort()`方法对单词进行升序排列,并打印出来。
阅读全文