看到群里有人發出兩個面試問題,寫了下第7題的線程題目,得出了答案,把代碼貼出來,以后自己常來看看,寫寫東西。話說這是我寫的第一篇博客,有點O(∩_∩)O!

以下是第7題的答案
PRivate ActivityMyAppleForBinding binding; List<HashMap<String,String>> list=new ArrayList<>(); List<String> listkey=new ArrayList<>(); Thread t1,t2; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);// binding=DataBindingUtil.setContentView(this,R.layout.activity_my_apple_for);// recyclerview_item_apply_job HashMap<String,String> map1=new HashMap<>(); map1.put("macBookPro","8988"); list.add(map1); HashMap<String,String> map2=new HashMap<>(); map2.put("三星note7","5675"); list.add(map2); HashMap<String,String> map3=new HashMap<>(); map3.put("小米4","2688"); list.add(map3); HashMap<String,String> map4=new HashMap<>(); map4.put("聯想p612","866"); list.add(map4); HashMap<String,String> map5=new HashMap<>(); map5.put("iphone7","5688"); list.add(map5); listkey.add("macBookPro"); listkey.add("三星note7"); listkey.add("小米4"); listkey.add("聯想p612"); listkey.add("iphone7"); TestTask testTask=new TestTask(); t1=new Thread(testTask); t2=new Thread(testTask); t1.start(); t2.start(); } public class TestTask implements Runnable{ //執行線程 @Override public void run() { //抽取次數不做限制,直到獎品抽完為止 while (listkey.size()>0){ int size=listkey.size(); //隨機抽取出的獎品 int number = new Random().nextInt(size); String key=listkey.get(number);// String value=list.get(number).get(key); listkey.remove(number);// list.remove(number); Log("+++++++"+Thread.currentThread().getName()+"------key--"+key); Log("----t1-----"+t1.getName()); Log("----t2-----"+t2.getName());// 02-07 10:49:57.978 27727-29735/org.unionapp.xfjyw E/LOG: +++++++Thread-4083------key--iphone7// 02-07 10:49:57.979 27727-29735/org.unionapp.xfjyw E/LOG: ----t1-----Thread-4083// 02-07 10:49:57.979 27727-29735/org.unionapp.xfjyw E/LOG: ----t2-----Thread-4084// 02-07 10:49:57.979 27727-29735/org.unionapp.xfjyw E/LOG: +++++++Thread-4083------key--三星note7// 02-07 10:49:57.979 27727-29735/org.unionapp.xfjyw E/LOG: ----t1-----Thread-4083// 02-07 10:49:57.979 27727-29736/org.unionapp.xfjyw E/LOG: +++++++Thread-4084------key--macBookPro// 02-07 10:49:57.979 27727-29736/org.unionapp.xfjyw E/LOG: ----t1-----Thread-4083// 02-07 10:49:57.979 27727-29736/org.unionapp.xfjyw E/LOG: ----t2-----Thread-4084// 02-07 10:49:57.979 27727-29736/org.unionapp.xfjyw E/LOG: +++++++Thread-4084------key--聯想p612// 02-07 10:49:57.979 27727-29736/org.unionapp.xfjyw E/LOG: ----t1-----Thread-4083// 02-07 10:49:57.979 27727-29736/org.unionapp.xfjyw E/LOG: ----t2-----Thread-4084// 02-07 10:49:57.980 27727-29735/org.unionapp.xfjyw E/LOG: ----t2-----Thread-4084// 02-07 10:49:57.981 27727-29736/org.unionapp.xfjyw E/LOG: +++++++Thread-4084------key--小米4// 02-07 10:49:57.981 27727-29736/org.unionapp.xfjyw E/LOG: ----t1-----Thread-4083// 02-07 10:49:57.981 27727-29736/org.unionapp.xfjyw E/LOG: ----t2-----Thread-4084 } } }有點亂,可以多試幾種方法去解答,再去多學習下線程的東西,來做總結。
新聞熱點
疑難解答