workerconsumer.java

来自「制作一个生产者和消费者模型的程序。 一个线程每3秒产生一个4字母长的随机单词作」· Java 代码 · 共 48 行

JAVA
48
字号
package edu.zucc;

import java.util.ArrayList;

class WordBook{
	private ArrayList wordlist = new ArrayList();
	
	public synchronized String getWord(){
		String sRet = null;
		if(wordlist.size() > 0){
			sRet = (String)wordlist.get(0);
			wordlist.remove(0);
		}
		
		return sRet;
	}
	
	public synchronized void addWord(String word){
		wordlist.add(word);
	}
}

class Worker implements Runnable{
	static private char[] alpha = {'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'}; 
	
	public void run() {
        String sWord = "";
        for(int i = 0; i < 4; i++){
            int index = (int)Math.floor(Math.random() * 26);
        	sWord += alpha[index];
        }
	}
	
}

public class WorkerConsumer {
	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Worker wk = new Worker();
		Thread t1 = new Thread(wk);
		t1.start();
	}

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?