集合
linweieran
用身体学习
展开
-
Iterator和ListIterator的知识点
首次接触到Iterator是在看到集合的程序的时候,那时候使用Iterator来读取集合中的元素,开始一直是读所以没什么错误出现,但是在迭代过程中向集合中增加元素,迭代和集合同时执行会出现此异常。这是迭代器本身就局限性,所以在迭代过程中不使用集合操作,容易出现异常。用一种方法就可以解决此问题,有一个已知的子接口ListIterator();使用Iterator接口的子接口,ListIterator来进行操作,他可以实现在迭代过程中对元素的增删改查,注意只有list集合具有该迭代功能。原创 2015-10-03 11:07:44 · 508 阅读 · 0 评论 -
使用LinkedList来模拟堆栈或队列数据结构
最近一直在学习集合,其中使用比较多的就是LinkedList,那么什么是LinkedList呢。在list中共有三种容器,LinkedList是容器的一种,具体介绍如下, List: |--Vector:组数据结构,是同步的(效率低,几乎不用),可增长。增删查询都很慢! |--LinkedList:内部是数组数据结构,是不同步的(效率高),大小可变的,代替了Vector。查询速度快 ...原创 2019-10-24 11:42:45 · 786 阅读 · 0 评论 -
HashSet不重复存储元素的执行过程
在前几篇博客中写了关于ArrayList的一些知识,现在就学一个Set集合的东西,Set集合:元素不可重复,是无序的,其中在Set接口中的方法和Collection一致,HashSet和TreeSet是常用子类。这次我们主要用到HashSet!HashSet:内部数据结构是Hash表,底层存储通过算法实现,根据元素自身的特点,确实其存放的位置。是不同步的。在HashSet集合中对每一个新对象都hash一个新值,这样子就认为是新元素,那么如何重写代码让它实现不重复存储呢?原创 2015-10-04 21:28:45 · 1312 阅读 · 0 评论 -
Java编程:定义功能去除ArrayList中的重复元素
说道ArrayList大家头脑中肯定能想到,ArrayList内部是数据链接列表实现(链表数据结构);是不同步的(效率高),增删速度快;有角标,但底层是链表结构。那么问题来了,既然ArrayList中没有自带的取出重复元素的功能,那么我们自己实现一个吧(这也是机试中常常出现的题)。原创 2015-10-05 15:25:38 · 1993 阅读 · 0 评论 -
Java编程之TreeSet排序两种解决方法(1)元素自身具备比较功能,元素需要实现Comparable接口覆盖compare(2)创建根据自定义Person类的name进行排序的Comparator
TreeSet还具有可以对集合中的元素进行指定顺序的排序的功能。 这个功能实现的基本原理就是,当存放元素的时候进行比较,比较之后再存入。对于普通的字符串它可以完美的实现排序功能,但当是自定义类的时候就会发生异常,该博文解决了这个问题。TreeSet对元素进行排序的方式一:让元素自身具备比较功能,元素需要实现Comparable接口,覆盖compareTo()方法;简而言之就是在Person类中继承Comparable接口,并重写compareTo()方法;TreeSet集合的第二种排序方式:让集合自身具备比原创 2015-10-05 20:01:48 · 3404 阅读 · 1 评论 -
Java编程机试:获取某一字符串中(只要字母),每一个字母出现的次数输出格式为a(x)b(y)c(z).....m(n)
Java编程:Map集合编程,要求如下:获取某一字符串如:"ag cCCCde3766ddgdfelakgjh"中,每一个字母(只要字母)出现的次数;要求输出格式是:a(2)b(1)h(4).....在这里使用Map集合是最为方便的,当然其他的方式也可以编出来。原创 2015-10-14 11:14:57 · 4632 阅读 · 0 评论