📄 rhymingwords.java
字号:
//这个类控制整个程序的流程import java.io.*;public class RhymingWords { public static void main(String[] args) throws IOException { //从一个文件中读取信息 FileReader words = new FileReader("words.txt"); //实现逆转和排序 Reader rhymedWords = reverse(sort(reverse(words)));//多个操作的连接 //为使用readline()而进行封装,因此in实际上是一个经过了复杂过滤的流 //将新的列表写到标准输出上 BufferedReader in = new BufferedReader(rhymedWords); String input;//定义一个过渡变量存放读到的每行的内容 //通过流in读取整个文件内容并输出 while ((input = in.readLine()) != null) System.out.println(input); in.close();//关闭流 } public static Reader reverse(Reader source) throws IOException { BufferedReader in = new BufferedReader(source); //建立相互连接的pipeIn和pipeOut,输入和输出必须成对出现 PipedWriter pipeOut = new PipedWriter(); PipedReader pipeIn = new PipedReader(pipeOut); //对pipeOut封装,利用PrintWriter中的方法 PrintWriter out = new PrintWriter(pipeOut); //创建线程并启动 new ReverseThread(out, in).start(); //让其他的线程使用它的输出 return pipeIn; }//下面这个sort()方法中的操作同reverse()方法 public static Reader sort(Reader source) throws IOException { BufferedReader in = new BufferedReader(source); PipedWriter pipeOut = new PipedWriter(); PipedReader pipeIn = new PipedReader(pipeOut); PrintWriter out = new PrintWriter(pipeOut); new SortThread(out, in).start(); return pipeIn; }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -