阿里云做网站怎么挣钱,上海制作网站多少钱,找人做效果图去什么网站,贵阳网站制作工具该楼层疑似违规已被系统折叠 隐藏此楼查看此楼Queue#xff1a; 基本上#xff0c;一个队列就是一个先入先出(FIFO)的数据结构Queue接口与List、Set同一级别#xff0c;都是继承了Collection接口。LinkedList实现了Deque接 口示例代码#xff1a;1. import java.util.Linke…该楼层疑似违规已被系统折叠 隐藏此楼查看此楼Queue 基本上一个队列就是一个先入先出(FIFO)的数据结构Queue接口与List、Set同一级别都是继承了Collection接口。LinkedList实现了Deque接 口示例代码1. import java.util.LinkedList;2. import java.util.Queue;3.4. publicclassQueueDemo{5. publicstaticvoid main(String[] args){6. // add()和remove()方法在失败的时候会抛出异常(不推荐)7. Queue queue newLinkedList();8. // 添加元素9. queue.offer(同学A);10. queue.offer(同学B);11. queue.offer(同学C);12. queue.offer(同学D);13. queue.offer(同学E);14. // 遍历队列15. System.out.println(----遍历队列----);16. for(String q : queue){17. System.out.print(q \t);18. }19. System.out.println();20.21. // 返回第一个元素并在队列中删除22. System.out.println(------poll------);23. System.out.println(poll queue.poll());24. System.out.println(queue);25. // 返回第一个元素26. System.out.println(------element------);27. System.out.println(element queue.element());28. System.out.println(queue);29. // 返回第一个元素30. System.out.println(------peek------);31. System.out.println(peek queue.peek());32. System.out.println(queue);33. }34.}2、Map集合Map接口中键和值一一映射. 可以通过键来获取值。给定一个键和一个值你可以将该值存储在一个Map对象. 之后你可以通过键来访问对应的值。当访问的值不存在的时候方法就会抛出一个NoSuchElementException异常.当对象的类型和Map里元素类型不兼容的时候就会抛出一个 ClassCastException异常。当在不允许使用Null对象的Map中使用Null对象会抛出一个NullPointerException 异常。当尝试修改一个只读的Map时会抛出一个UnsupportedOperationException异常。一、Map接口示例代码示例代码1. import java.util.HashMap;2. import java.util.Iterator;3. import java.util.Map;4. import java.util.Set;5.6. /**7. * Map接口 key-value 根据一个对象查找对象. HashMap、HashTable、TreeMap是它的实现类,8. *9. * author sxj10. *11. */12.publicclassHashMapAndHashTable{13. publicstaticvoid main(String[] args){14. // 如果是基本数据类型声明的map的时候使用包装类15. Map map newHashMap();16.17. // 添加数据 put当key不存在时添加key-value18. map.put(1,str1);19. map.put(2,str2);20. map.put(3,str3);21. map.put(4,str4);22. map.put(5,str5);23. // put 当key存在时修改key对应的value24. map.put(5,111111);25.26. map.put(6,null);27. map.put(7,null);28.29. // 移除 remove(key)30. map.remove(7);31.32. // 判断是否存在key33. System.out.println(是否存在key5》 map.containsKey(5));34. // 判断是否存在value35. System.out.println(是否存在Value:str4 map.containsValue(str4));36.37. // 清空map38. // map.clear();39.40. System.out.println(map是否为空 map.isEmpty());41.42. // 输出43. System.out.println(map);44. // 遍历45. Set keysSet map.keySet();46. Iterator iterator keysSet.iterator();47. while(iterator.hasNext()){48. Integer intKey iterator.next();49. System.out.println(key: intKey ----Value:50. map.get(intKey));51. }52. System.out.println(--------------------);53. for(Iterator iterator2 keysSet.iterator(); iterator2.hasNext();){54. int intKey iterator2.next();55. System.out.println(key: intKey ----Value:56. map.get(intKey));57. }58. System.out.println(--------------------);59. for(int intKey : keysSet){60. System.out.println(key: intKey ----Value:61. map.get(intKey));62. }63. }64.}二、TreeMap类与 TreeSet类似的是TreeMap中也提供了一系列根据key顺序访问key-value对的方法:示例代码1. import java.util.Map;2. import java.util.TreeMap;3.4. publicclassTreeMapDemo{5. publicstaticvoid main(String[] args){6.7. // 如果是基本数据类型声明的map的时候使用包装类8. TreeMap map newTreeMap();9.10. // 添加数据 put当key不存在时添加key-value11. map.put(1,str1);12. map.put(2,str2);13. map.put(3,str3);14. map.put(4,str4);15. map.put(5,str5);16. // put 当key存在时修改key对应的value17. map.put(5,111111);18.19. map.put(6,null);20. map.put(7,null);21.22. System.out.println(map);23. System.out.println(--------------------------);24. //firstEntry() firstKey() lastEntry() lastKey()25. System.out.println(firstEntry()---map.firstEntry());26. System.out.println(firstKey()---map.firstKey());27. System.out.println(lastEntry()---map.lastEntry());28. System.out.println(lastKey()---map.lastKey());29.30. System.out.println(--------------------------);31. //higherEntry(K key) higherKey(K key) lowerEntry(K key) lowerKey(K key)32. System.out.println(higherKey(4)---map.higherKey(4));33. System.out.println(higherEntry(4)---map.higherEntry(4));34. System.out.println(lowerKey(4)---map.lowerKey(4));35. System.out.println(lowerEntry(4)---map.lowerEntry(4));36.37. System.out.println(--------------------------);38. // headMap(K toKey) tailMap(K fromKey) subMap(K fromKey, K toKey)39. Map mapHeadMapmap.headMap(4);40. Map mapTailMapmap.tailMap(4);41. Map mapSubMapmap.subMap(2,5);42.43. System.out.println(headMap(4)---mapHeadMap);44. System.out.println(tailMap(4)---mapTailMap);45. System.out.println(subMap(2,5)---mapSubMap);46.47. }48.}由于TreeMap是有序的也支持Comparable和Comparator两种排序方式。TreeMap主要是Key值排序TreeMapComparable排序示例代码1. import java.util.Map;2. import java.util.Set;3. import java.util.TreeMap;4.5. publicclassTreeMapDemo1{6. publicstaticvoid main(String[] args){7. Map mapnewTreeMap();8. map.put(newPerson1(1,51),1);9. map.put(newPerson1(2,15),2);10. map.put(newPerson1(3,32),3);11. map.put(newPerson1(4,24),4);12. map.put(newPerson1(5,6),5);13.14. Set kSetmap.keySet();15. for(Person1 person1 : kSet){16. System.out.println(name:person1.getName();age:person1.getAge();num:map.get(person1));17. }18. }19.}20.21.classPerson1implementsComparable{22. privateString name;23. privateint age;24.25. publicPerson1(String name,int age){26. this.namename;27. this.ageage;28. }29.30. publicString getName(){31. return name;32. }33.34. publicvoid setName(String name){35. this.name name;36. }37.38. publicint getAge(){39. return age;40. }41.42. publicvoid setAge(int age){43. this.age age;44. }45.46. Override47. publicint compareTo(Person1 o){48. // 从小到大 this-o49. // 从大到小o-this50. // return this.age - o.age;51. if(this.age ! o.age){52. returnthis.age - o.age;53. }else{54. returnthis.name.compareTo(o.name);55. }56. }57.}TreeMapComparator排序示例代码1. import java.util.Comparator;2. import java.util.Map;3. import java.util.Set;4. import java.util.TreeMap;5.6. publicclassTreeMapDemo2{7. publicstaticvoid main(String[] args){8. Map map newTreeMap(9. newComparator(){10. Override11. publicint compare(Person2 o1,Person2 o2){12. /**13. * 从小到大o1-o2 从大到小o2-o114. */15. if(o1.getAge()! o2.getAge()){16. return o1.getAge()- o2.getAge();17. }else{18. return o2.getName().compareTo(o1.getName());19. }20. }21. });22.23. map.put(newPerson2(1,51),1);24. map.put(newPerson2(2,15),2);25. map.put(newPerson2(3,32),3);26. map.put(newPerson2(4,24),4);27. map.put(newPerson2(5,6),5);28.29. Set kSet map.keySet();30. for(Person2Person2: kSet){31. System.out.println(name:Person2.getName();age:32. Person2.getAge();num: map.get(Person2));33. }34. }35.}36.37.classPerson2{38. privateString name;39. privateint age;40.41. publicPerson2(String name,int age){42. this.name name;43. this.age age;44. }45.46. publicString getName(){47. return name;48. }49.50. publicvoid setName(String name){51. this.name name;52. }53.54. publicint getAge(){55. return age;56. }57.58. publicvoid setAge(int age){59. this.age age;60. }61.}