• 大小: 17KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-05-12
  • 语言: 其他
  • 标签: Java  单词排序  

资源简介

将一个单词排序程序并进行调试,体会数据流架构风格系统的构件和连接件原理和实现方法。在此基础上,改为通过键盘输入单词排序过滤器实时进行排序输出到屏幕、控制台,并在程序结束后将最终结果写入到文件中。

资源截图

代码片段和文件信息

package wordsort;

import java.awt.Color;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.ThreadFactory;

import javax.swing.JButton;
import javax.swing.Jframe;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.JTextField;
import javax.swing.event.DocumentEvent;
import javax.swing.event.DocumentListener;
import javax.swing.text.BadLocationException;
import javax.swing.text.Document;

public class frame {
private static List wordList;
JTextArea output=new JTextArea();
    JTextField word = new JTextField(20);
public frame(){
    Jframe frame=new Jframe(“单词排序“);  
    frame.setSize(400550);  
    frame.setLocation(300200);  
 
    frame.setDefaultCloseOperation(Jframe.EXIT_ON_CLOSE);
    
    frame.setLayout(null);
    
output.setFont(new Font(“宋体“ Font.PLAIN23));
output.setForeground(Color.red);
output.setLineWrap(true);
output.setWrapstyleWord(true);
output.setBounds(13 10 185 300);
frame.add(output);

JScrollPane jsp=new JScrollPane(output);
jsp.setBounds(1310360350);
jsp.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
frame.add(jsp);


JLabel label=new JLabel(“输入单词:“);
label.setFont(new Font(“宋体“ Font.PLAIN16));
    label.setBounds(204008025);
    frame.add(label);

    word.setFont(new Font(“宋体“ Font.PLAIN20));
    word.setBounds(10040026025);
    frame.add(word);
    
    Document doc = word.getDocument();  
   // doc.addDocumentListener((DocumentListener) word);  
    
    JButton Button = new JButton(“确定“);
    Button.setFont(new Font(“宋体“ Font.PLAIN20));
    Button.setBounds(280 450 80 25);

    Button.addActionListener(new SortWords());
    frame.add(Button);

    frame.setVisible(true); 

}

private ExecutorService service = Executors.newCachedThreadPool(new ThreadFactory() {
        
        @Override
        public Thread newThread(Runnable r) {
            return new Thread(r “output“);
        }
});

class SortWords implements ActionListener{

@Override
public void actionPerformed(ActionEvent e) {


// TODO 自动生成的方法存根
String[] getTexts=word.getText().split(“ “);
for(String text:getTexts)
{
System.out.println(text);
}

Pipe pipe = new PipeImpl();
Thread wordGenerator = new WordSortGenerator(pipegetTexts);
WordSortFilter wordSortFilter = new WordSortFilter(pipe);
wordGenerator.start();
wordSortFilter.start();
try {
wordSortFilter.join();
} catch (InterruptedException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
output.setText(“单词排序结果:“+“\n“);
//

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2017-09-25 19:46  单词排序\
     文件         301  2017-09-25 19:11  单词排序\.classpath
     文件         388  2017-09-25 19:11  单词排序\.project
     目录           0  2017-09-25 19:11  单词排序\.settings\
     文件         598  2017-09-25 19:11  单词排序\.settings\org.eclipse.jdt.core.prefs
     目录           0  2017-10-24 12:18  单词排序\bin\
     目录           0  2017-11-02 20:48  单词排序\bin\wordsort\
     文件         707  2017-11-02 21:02  单词排序\bin\wordsort\frame$1.class
     文件        2602  2017-11-02 21:02  单词排序\bin\wordsort\frame$SortWords.class
     文件        2729  2017-11-02 21:02  单词排序\bin\wordsort\frame.class
     文件         232  2017-10-24 12:18  单词排序\bin\wordsort\Pipe.class
     文件         915  2017-10-24 12:18  单词排序\bin\wordsort\PipeImpl.class
     文件         408  2017-10-24 12:18  单词排序\bin\wordsort\word.class
     文件        3376  2017-10-24 12:18  单词排序\bin\wordsort\WordSort.class
     文件        1879  2017-10-24 12:18  单词排序\bin\wordsort\WordSortFilter.class
     文件         984  2017-10-24 12:18  单词排序\bin\wordsort\WordSortGenerator.class
     文件          11  2017-11-02 21:07  单词排序\sortedwords.txt
     目录           0  2017-09-25 19:22  单词排序\src\
     目录           0  2017-10-21 13:52  单词排序\src\wordsort\
     文件        3342  2017-11-02 21:02  单词排序\src\wordsort\frame.java
     文件         162  2017-10-11 23:56  单词排序\src\wordsort\Pipe.java
     文件         503  2017-10-11 23:56  单词排序\src\wordsort\PipeImpl.java
     文件         156  2017-10-21 13:53  单词排序\src\wordsort\word.java
     文件        3331  2017-10-21 13:59  单词排序\src\wordsort\WordSort.java
     文件        1353  2017-10-21 14:57  单词排序\src\wordsort\WordSortFilter.java
     文件        1090  2017-10-21 15:14  单词排序\src\wordsort\WordSortGenerator.java
     文件          13  2017-09-25 19:46  单词排序\words.txt

评论

共有 条评论