Java每日一题20161214

作者: weknow | 来源:发表于2016-12-14 08:37 被阅读106次

20161213问题解析请点击今日问题下方的“【Java每日一题】20161214”查看(问题解析在公众号首发,公众号ID:weknow619)

package Dec2016;

import java.util.ArrayList;
import java.util.List;

public class Ques1214 {

    public static void main(String[] args) {
        
        final List<String> tickets = new ArrayList<String>();
        for(int i = 0; i < 1000; i++){
            tickets.add("高铁票-"+i);
        }
        
        // 10个线程窗口卖票
        for(int i = 0; i < 10; i++){
            new Thread(){
                public void run(){
                    while(true){
                        System.out.println(Thread.currentThread().getId()+"-"+tickets.remove(0));
                    }
                }
            }.start();
        }
    }
}

今日问题:
请问主程序输出结果是什么?能不能实现各窗口间卖的票不相互冲突?(问题分析将在每日一题20161215公布)

相关文章

网友评论

  • 14f504833f88:为啥提交了格式都没有了
    37955dcd7ec1:知道怎么设置了谢谢
    37955dcd7ec1:@weknow 下边的下拉框只能提交文本格式的
    weknow:@爱园园真是太好了 没有用markdown的形式吧
  • 14f504833f88:package com.uuzz.test;

    import java.util.ArrayList;
    import java.util.List;

    public class Ques1214 {

    public static void main(String[] args){
    final List<String> tickets = new ArrayList<String>();
    for(int i = 0; i < 1000; i++){
    tickets.add("高铁票-"+i);
    }

    for (int i = 0; i < 10; i++) {
    new Thread(new Runnable() {
    @Override
    public void run() {
    while(true){
    synchronized(tickets){
    if(tickets.size() == 0){
    break;
    }
    System.out.println(Thread.currentThread().getId()+"-"+tickets.remove(0));
    }
    }
    }
    }).start();
    }
    }
    }

本文标题:Java每日一题20161214

本文链接:https://www.haomeiwen.com/subject/lfxcmttx.html