<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 14,  comments - 7,  trackbacks - 0
    1.當我們去銀行辦理什么業務的時候總會先在一個類似電腦的小系統上去一個號,然后等著,當被叫到時就去相應的窗口辦理業務,這種排隊的小系統主要用到了接口Queue,因為它符合隊列的要求先進先出。
    2.還有就是有種特殊情況就是,銀行的金卡用戶,他們的權限較高,總可以在普通用戶的前面辦理業務
    相應代碼如下:
    package com.dr.queue;

    public class Counter {

        
    private int counterId;  //???й???????
        private String counterName; //???й????????????
        
        
    private Waiter w;
        
        
    public Counter(Waiter w){
           
    this.w = w;
        }

        
        
    public Waiter getW() {
            
    return w;
        }


        
    public void setW(Waiter w) {
            
    this.w = w;
        }

        
        
    public int getCounterId() {
            
    return counterId;
        }

        
    public void setCounterId(int counterId) {
            
    this.counterId = counterId;
        }

        
    public String getCounterName() {
            
    return counterName;
        }

        
    public void setCounterName(String counterName) {
            
    this.counterName = counterName;
        }

        
        
    public void handleBusiness(){
            System.out.println(
    "I handling the " + this.w.getNum() +" waiter");
            
    try {
                Thread.sleep(
    100);
            }
     catch (InterruptedException e) {
                e.printStackTrace();
            }

            System.out.println(
    "I have handled the waiter,next ,next ,next");
            
        }


    }

    package com.dr.queue;


    public class Waiter {

        
    private int num;
        
        
    private int frontNum;
        
    private int flag;//0=普通 1= 金卡

        
    public int getFlag() {
            
    return flag;
        }


        
    public void setFlag(int flag) {
            
    this.flag = flag;
        }


        
    public int getNum() {
            
    return num;
        }


        
    public void setNum(int num) {
            
    this.num = num;
        }


        
    public int getFrontNum() {
            
    return frontNum;
        }


        
    public void setFrontNum(int frontNum) {
            
    this.frontNum = frontNum;
        }

        
        
        
    }

    package com.dr.queue;

    import java.util.LinkedList;
    import java.util.List;
    import java.util.Queue;

    public class QueueServer {

        LinkedList
    <Waiter> waiterList = new LinkedList<Waiter>();

        
        
        
    public LinkedList<Waiter> init(){
            
            
    for(int i=1;i<=30;i++){
                Waiter w 
    = new Waiter();
                w.setNum(i);
                w.setFrontNum(i
    -1);
                waiterList.offer(w);
            }

            
    return waiterList;
    }

    }
    package ui;

    import java.util.Queue;

    import org.eclipse.jface.dialogs.MessageDialog;
    import org.eclipse.swt.SWT;
    import org.eclipse.swt.events.SelectionAdapter;
    import org.eclipse.swt.events.SelectionEvent;
    import org.eclipse.swt.widgets.Button;
    import org.eclipse.swt.widgets.Display;
    import org.eclipse.swt.widgets.Shell;
    import org.eclipse.swt.widgets.Text;

    import com.dr.queue.QueueServer;
    import com.dr.queue.Waiter;

    public class BankWorkerUI {
        
    public static void main(String[] args) {
            
            
    final Display display = Display.getDefault();
            
    final Shell shell = new Shell();
            shell.setSize(
    327253);
            
            shell.setText(
    "銀行排隊之工作人員客戶端");
            
    // ------------------新插入的界面核心代碼------------------------
            QueueServer qs = new QueueServer();//實例化類
            final Queue<Waiter> waiterList = qs.init();//初始化隊列服務器
            
            
    final Text txt = new Text(shell,SWT.MULTI);
            txt.setBounds(
    653018070);
            
    // 事件代碼里要訪問button
            final Button button = new Button(shell, SWT.Activate);
            button.addSelectionListener(
    new SelectionAdapter() // 加一個??擇監聽器
                        public void widgetSelected(SelectionEvent e) {
                            
    //System.out.println("############### " + waiterList.size());
                            Waiter waiter= waiterList.poll();
                            
    if(waiter!= null){
                              txt.setText(waiter.getNum()
    +"號顧客請到1號窗口辦理業務");
                            }
    else{
                                txt.setText(
    "現在沒有人辦理業務了,您可以休息會了\n 喝杯咖啡吧,哈哈!");
                            }

                        }

                    }
    );
            button.setBounds(
    9014110025); // 設置按鈕位置
            button.setText("下一個");// 設置按鈕上的文字

            
    // ------------------END---------------------------------------------
            shell.layout();
            shell.open();
            
    while (!shell.isDisposed()) {
                
    if (!display.readAndDispatch())
                    display.sleep();
            }

        }

    }

    package ui;

    import java.util.LinkedList;

    import org.eclipse.swt.SWT;
    import org.eclipse.swt.events.SelectionAdapter;
    import org.eclipse.swt.events.SelectionEvent;
    import org.eclipse.swt.graphics.Font;
    import org.eclipse.swt.widgets.Button;
    import org.eclipse.swt.widgets.Display;
    import org.eclipse.swt.widgets.Shell;
    import org.eclipse.swt.widgets.Text;

    import com.dr.queue.QueueServer;
    import com.dr.queue.Waiter;

    public class WaiterQueueUI {
        
    public static void main(String[] args) {
            
    final Display display = Display.getDefault();
            
    final Shell shell = new Shell();
            shell.setBounds(
    0,01000800);
            shell.setText(
    "銀行排隊之顧客使用的客戶端");
            
    // ------------------新插入的界面核心代碼------------------------
            QueueServer qs = new QueueServer();//實例化類
            final LinkedList<Waiter> waiterList = qs.init();//初始化隊列服務器
            
            
    final Text txt = new Text(shell,SWT.MULTI);
            txt.setBounds(
    26050500450);
            
    // 事件代碼里要訪問button,所以加????final
            final Button button = new Button(shell, SWT.Activate);
            button.addSelectionListener(
    new SelectionAdapter() // 加一個??擇監聽器
                        public void widgetSelected(SelectionEvent e) {
                            
    //System.out.println("############### " + waiterList.size());
                            Waiter waiter = new Waiter();                        
                            waiter.setNum(waiterList.size()
    +1);
                            waiter.setFrontNum(waiterList.size());
                            waiterList.offer(waiter);
                            
    if(waiterList.size() <= 50){
                                txt.setText( 
    "您現在排在"+waiter.getNum()+"位置上,\n您前面有"+waiter.getFrontNum()+"個人\n請您耐心等候吧!哈哈");
                            }
    else{
                                txt.setText(
    "您前面已經排50個人,請考慮!\n"+"您現在排在"+waiter.getNum()+"位置上,\n您前面有"+waiter.getFrontNum()+"個人\n請您耐心等候吧!哈哈");
                            }

                        }

            }
    );
            button.setBounds(
    10053020075); // 設置按鈕位置
            button.setFont(new Font(display,"宋體",12,SWT.BOLD));
            button.setText(
    "個人業務");// 設置按鈕上的文字
            
             
    //final Text goldTxt = new Text(shell,SWT.MULTI);
              
    //  goldTxt.setBounds(600, 50, 500, 450);
                
    // 事件代碼里要訪問button,所以加????final
                final Button goldButton = new Button(shell, SWT.Activate);
                goldButton.addSelectionListener(
    new SelectionAdapter() // 加一個??擇監聽器
                            public void widgetSelected(SelectionEvent e) {
                                
    //System.out.println("############### " + waiterList.size());
                                Waiter w = new Waiter();
                                w.setFlag(
    1);
                                waiterList.addFirst(w);
                                
                                txt.setText(
    "尊敬的金卡用戶,您現在可以到我行的任意窗口隨時辦理業務");
                                
                            }

                }
    );
                goldButton.setBounds(
    70053020075); // 設置按鈕位置
                goldButton.setFont(new Font(display,"宋體",12,SWT.BOLD));
                goldButton.setText(
    "金卡通道");// 設置按鈕上的文字


            
    // ------------------END---------------------------------------------
            shell.layout();
            shell.open();
            
    while (!shell.isDisposed()) {
                
    if (!display.readAndDispatch())
                    display.sleep();
            }

        }

    }


    運行界面為:




    posted on 2010-11-01 13:22 迷人笑笑 閱讀(3776) 評論(0)  編輯  收藏

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    <2010年11月>
    31123456
    78910111213
    14151617181920
    21222324252627
    2829301234
    567891011

    常用鏈接

    留言簿(13)

    隨筆檔案

    文章檔案

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲AV之男人的天堂| 免费被黄网站在观看| 久久久久久久尹人综合网亚洲| 男人j进女人p免费视频| 俄罗斯极品美女毛片免费播放| 亚洲色少妇熟女11p| 啦啦啦www免费视频| 久久久久久久久无码精品亚洲日韩| 国产无遮挡吃胸膜奶免费看视频| 亚洲欧美在线x视频| 亚洲人午夜射精精品日韩| 一级特黄录像视频免费| 亚洲五月综合缴情在线观看| 毛片在线全部免费观看| 亚洲一区二区三区日本久久九| 国产成人精品久久免费动漫| 亚洲综合校园春色| 拔擦拔擦8x华人免费久久| 四虎精品免费永久免费视频| 精品久久香蕉国产线看观看亚洲| 国产精品99精品久久免费| 亚洲成年人电影网站| 白白国产永久免费视频| 成年网在线观看免费观看网址| 亚洲人成77777在线播放网站| 7m凹凸精品分类大全免费| 亚洲AV一二三区成人影片| 免费a在线观看播放| 国产成人精品无码免费看| 亚洲av乱码一区二区三区| 亚洲成av人片一区二区三区 | 国产成人精品免费视频软件| 又硬又粗又长又爽免费看 | 97在线观免费视频观看| 久久精品国产亚洲AV| 亚洲VA中文字幕无码一二三区| 日本成年免费网站| a级毛片免费网站| 久久精品亚洲AV久久久无码| 亚洲精品国产福利一二区| 亚洲免费黄色网址|