经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » Java相关 » Java » 查看文章
Jvav Collection-List
来源:cnblogs  作者:五香麻辣大白兔  时间:2018/10/25 9:36:35  对本文有异议
  1. 1 package 集合;
  2. 2
  3. 3 import java.util.ArrayList;
  4. 4 import java.util.Collection;
  5. 5
  6. 6 /**
  7. 7 * 集合和数组的区别:
  8. 8 * 1、长度
  9. 9 * 数组长度固定
  10. 10 * 集合长度不定
  11. 11 * 2、内容不同
  12. 12 * 数组存储的是同一种元素
  13. 13 * 集合可以存储不同类型的元素
  14. 14 * 3、存储类型
  15. 15 * 数组可以存储基本类型数据,也可以存储引用数据类型
  16. 16 * 集合只能存储引用类型
  17. 17 *
  18. 18 * 结构图
  19. 19 * ArrayList
  20. 20 * List Vector
  21. 21 * LinkedList
  22. 22 * Collection
  23. 23 * HashSet
  24. 24 * Set
  25. 25 * TreeSet
  26. 26 * Collection功能概述:
  27. 27 * 1、添加
  28. 28 * add(Object o) addAll(Collection c)
  29. 29 * 2、删除
  30. 30 * clear() 移除所有元素
  31. 31 * remove(Object o)
  32. 32 * removeAll(Collection c)
  33. 33 * 3、修改
  34. 34 * 4、获取
  35. 35 * Iterator<E> iterator()
  36. 36 * 5、长度
  37. 37 * int size()
  38. 38 * 6、判断
  39. 39 * contains(Object o) containAll(Collection c) imEmpty()
  40. 40 * 7、retainAll(Collection c) 两个集合都有的元素
  41. 41
  42. 42 */
  43. 43 /**
  44. 44 * 迭代器遍历
  45. 45 * Iterator it = c.iterator(); //返回的肯定是子类对象,这里是多态
  46. 46 * it.next(); //移动到下一个 不要在一个语句中多次调用next方法,
  47. 47 * 因为对象会变
  48. 48 * it.hasNext() //判断是不是有下一个对象
  49. 49 * 迭代器遍历元素的时候,通过集合是不能修改元素的
  50. 50 * 解决办法:
  51. 51 * 1.迭代器迭代元素,迭代器修改元素 it.add()
  52. 52 * 2.集合遍历元素,集合修改元素(for)
  53. 53 *
  54. 54 */
  55. 55
  56. 56
  57. 57 /**
  58. 58 * List特点:
  59. 59 * 1.与set不同,允许重复元素。可根据索引获取对象
  60. 60 * 2.有序的collection,
  61. 61 * 3.特有功能:
  62. 62 * 1.添加功能 add(int index , object element) 在指定位置添加元素
  63. 63 * 2.获取功能 get(int index) //获取指定位置的元素
  64. 64 * 3.列表迭代器 ListIterator listIterator() List集合特有的迭代器
  65. 65 * 4.删除功能 remove(int index) 根据索引删除元素,返回被删除的元素
  66. 66 * 5.修改功能 set(int index,Object element) 返回被修改的元素
  67. 67 */
  68. 68 /**
  69. 69 * List的子类特点:
  70. 70 * ArrayList:
  71. 71 * 底层数据结构是数组,查询快,增删慢
  72. 72 * 线程不安全,效率高
  73. 73 * Vector: //一般不同
  74. 74 * 底层数据结构是数组,查询快,增删慢
  75. 75 * 线程安全,效率低
  76. 76 * LinkedList:
  77. 77 * 底层数据结构是链表,查询慢,增删慢。
  78. 78 * 线程不安全,效率高。
  79. 79 * 常见数据结构
  80. 80 * 栈 先进后出
  81. 81 * 队列 先进先出
  82. 82 * 数组 查询慢,增删快
  83. 83 * 链表 查询慢,增删快
  84. 84 *
  85. 85 */
  86. 86 public class 集合List {
  87. 87 public static void main(String[] args) {
  88. 88 //创建集合对象
  89. 89 Collection c = new ArrayList();
  90. 90 }
  91. 91 }

 

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号