首页

文章

java中的集合有几种

发布网友 发布时间:2022-03-29 01:32

我来回答

5个回答

懂视网 时间:2022-03-29 05:53

java有三种集合,包括Set、List和Map,它们都处于java.util包中,Set、List和Map都是接口,它们有各自的实现类。

  

  1、Set中的对象不按特定方式排序,并且没有重复对象。但它的有些实现类能对集合中的对象按特定方式排序,例如TreeSet类,它可以按照默认排序,也可以通过实现接口来自定义排序方式。

  

  2、List中的对象按照索引位置排序,可以有重复对象,允许按照对象在集合中的索引位置检索对象,如通过list.get(i)方式来获得List集合中的元素。

  

  3、Map中的每一个元素包含一个键对象和值对象,它们成对出现。键对象不能重复,值对象可以重复。

热心网友 时间:2022-03-29 03:01

集合类是放在java.util.*;这个包里。集合类存放的都是对象的引用,而非对象本身,为了说起来方便些,我们称集合中的对象就是指集合中对象的引用(reference)。引用的概念大家不会忘了吧,在前边我们讲数据类型时讲的。
集合类型主要有3种:set(集)、list(列表)、map(映射)和Queue(队列)。//队列为jdk5中的加上的

(1) Set

集(set)是最简单的一种集合,它的对象不按特定方式排序,只是简单的把对象加入集合中,就像往口袋里放东西。对集中成员的访问和操作是通过集中对象的引用进行的,所以集中不能有重复对象。我们知道数学上的集合也是Set这个,集合里面一定是没有重复的元素的。

(2)List

列表(List)的主要特征是其对象以线性方式存储,没有特定顺序,只有一个开头和一个结尾,当然,它与根本没有顺序的Set是不同的。它是链表嘛,一条链肯定有顺序这个顺序就不一定了。

(3)Map

映射(Map),这个在java里不是地图的意思,其实地图也是映射哈。它里面的东西是键-值对(key-value)出现的,键值对是什么呢?举个例子,比如我们查字典,用部首查字法。目录那个字就是键,这个字的解释就是值。键和值成对出现。这样说可以理解吧。这也是很常用的数据结构哦。

(4)Queue

在jdk5.0以前,通常的实现方式是使用java.util.List集合来模仿Queue。Queue的概念通过把对象添加(称为enqueuing的操作)到List的尾部(即Queue的后部)并通过从List的头部(即Queue的前部)提取对象而从 List中移除(称为dequeuing的操作)来模拟。你需要执行先进先出的动作时可以直接使用Queue接口就可以了。

这4个东西,有时候功能还不太完善,需要有些子类继承它的特性。Set的子接口有TreeSet,SortedSet,List的有ArrayList等,Map里有HashMap,HashTable等,Queue里面有BlockingQueue等。我们来看看例子吧:

实践: Set举例

import java.util.*;

public class SetExample {

public static void main(String[] args) {

Set set = new HashSet(); //HashSet是Set的子接口

set.add("one");

set.add("second");

set.add("3rd");

set.add(new Integer(4));

set.add(new Float( 5.0F ));

set.add("second");

set.add(new Integer(4));

System.out.println(set);

}}

List举例:

import java.util.*;

public class ListExample {

public static void main(String[] args) {

List list = new ArrayList();

list.add("one");

list.add("second");

list.add("3rd");

list.add(new Integer(4));

list.add(new Float( 5.0F ));

list.add("second");

list.add(new Integer(4));

System.out.println(list);

}}

Map举例

import java.util.Map;

import java.util.HashMap;

import java.util.Iterator;

import java.io.FileReader;

public class MapExample {

public static void main(String[] args) throws java.io.FileNotFoundException {

Map word_count_map = new HashMap();

FileReader reader = new FileReader(args[0]);

Iterator words = new WordStreamIterator(reader);

while ( words.hasNext() ) {

String word = (String) words.next();

String word_lowercase = word.toLowerCase();

Integer frequency = (Integer)word_count_map.get(word_lowercase);

if ( frequency == null ) {

frequency = new Integer(1);

} else {

int value = frequency.intValue();

frequency = new Integer(value + 1);}

word_count_map.put(word_lowercase, frequency);

}

System.out.println(word_count_map);

}}

Queue举例:

import java.io.IOException;

import java.io.PrintStream;

import java.util.LinkedList;

import java.util.Queue;

public class QueueTester {

public Queue<String> q; //发现了一个奇怪的语法,这个尖括号是泛型声明

public QueueTester() {q = new LinkedList<String>();}

public void testFIFO(PrintStream out) throws IOException {

q.add("First");

q.add("Second");

q.add("Third");

Object o;

while ((o = q.poll()) != null) {

out.println(o);}}

public static void main(String[] args) {

QueueTester tester = new QueueTester();

try { tester.testFIFO(System.out);

} catch (IOException e) {

e.printStackTrace(); } }}

热心网友 时间:2022-03-29 04:19

所有实现了Collection接口的,以及Map接口的都是java的集合,具体查看JavaAPI。

常用的集合类ArrayList, LinkedList, Stack, HashSet, HashMap,
还有一个遍历器Iterator。

---------Collection接口--------
java.util
接口 Collection<E>
所有超级接口:
Iterable<E>
所有已知子接口:
BeanContext, BeanContextServices, BlockingQueue<E>, List<E>, Queue<E>, Set<E>,

SortedSet<E>
所有已知实现类:
AbstractCollection, AbstractList, AbstractQueue, AbstractSequentialList,

AbstractSet, ArrayBlockingQueue, ArrayList, AttributeList,

BeanContextServicesSupport, BeanContextSupport, ConcurrentLinkedQueue,

CopyOnWriteArrayList, CopyOnWriteArraySet, DelayQueue, EnumSet, HashSet,

JobStateReasons, LinkedBlockingQueue, LinkedHashSet, LinkedList,

PriorityBlockingQueue, PriorityQueue, RoleList, RoleUnresolvedList, Stack,

SynchronousQueue, TreeSet, Vector

-----------Map接口-------------
java.util
接口 Map<K,V>
所有已知子接口:
ConcurrentMap<K,V>, SortedMap<K,V>
所有已知实现类:
AbstractMap, Attributes, AuthProvider, ConcurrentHashMap, EnumMap, HashMap,

Hashtable, IdentityHashMap, LinkedHashMap, PrinterStateReasons, Properties,

Provider, RenderingHints, TabularDataSupport, TreeMap, UIDefaults, WeakHashMap

热心网友 时间:2022-03-29 05:54

3种吧我记得 面试的时候会问。。。

set(集)、list(列表)和map(映射)。

区别嘛 HASHMAP只有KEY和value值对应的。。set是可以自动清楚相同的元素
list是其对象以线性方式存储,没有特定顺序,只有一个开头和一个结尾,当然,它与根本没有顺序的集是不同的。
列表在数据结构中分别表现为:数组和向量、链表、堆栈、队列。

热心网友 时间:2022-03-29 07:45

学习
八月中国最凉快的地方 八月份哪里最凉快,去哪旅游好?美丽的地方 乱字同韵字是什么意思 华硕笔记本电脑触摸板怎么开笔记本电脑触摸板怎么开启和关闭_百度知 ... 陕西职务侵占案立案准则 结婚后我的恋情维系了十年,怎么做到的? 玉米仁子饭产自哪里 中国期货交易所的交易品种有哪些? 历史要怎么读,有啥诀窍 高中历史诀窍 年终会活动策划方案 深度解析:第一财经回放,探索财经新风向 逆水寒手游庄园怎么邀请好友同住 逆水寒手游 逆水寒不同区可以一起组队吗? 逆水寒手游 逆水寒怎么进入好友世界? 逆水寒手游 逆水寒怎么去别人的庄园? 使用puppeteer实现将htmll转成pdf 内卷时代下的前端技术-使用JavaScript在浏览器中生成PDF文档 【译】将HTML转为PDF的几种实现方案 变形金刚08动画怎么样 变形金刚08动画的问题 变形金刚08动画日语版剧情介绍 高分!换显卡nvidia控制面板被我卸了,重新安装显卡驱动后没了nvidia控... 我的nvidia控制面板被卸载了 怎么找回啊 卸载后 这个画面看着很奇怪_百 ... 李卓彬工作简历 林少明工作简历 广东工业职业技术学院怎么样 郑德涛任职简历 唐新桂个人简历 土地入股的定义 ups快递客服电话24小时 贷款记录在征信保留几年? 安徽徽商城有限公司公司简介 安徽省徽商集团新能源股份有限公司基本情况 安徽省徽商集团有限公司经营理念 2019哈尔滨煤气费怎么有税? 快手删除的作品如何恢复 体育理念体育理念 有关体育的格言和理念 什么是体育理念 万里挑一算彩礼还是见面礼 绿萝扦插多少天后发芽 绿萝扦插多久发芽 扦插绿萝多久发芽 炖牛排骨的做法和配料 网络诈骗定罪标准揭秘 “流水不争先”是什么意思? mc中钻石装备怎么做 为什么我的MC里的钻石块是这样的?我想要那种。是不是版本的问题?如果是... 带“偷儿”的诗句 5000元的手表什么牌子比较好 五千左右买什么手表好 月收入5000想买款手表,有哪些良心品牌推荐? 想买块男士手表,价格5000左右,二十几岁带的。 泗洪表店5000块钱的是什么表 想给自己买块表,5000以上的,有哪些推荐? 5000左右的手表哪个牌子要好一点 5000元左右的手表哪个牌子比较好? 5000左右的表买什么好 5千左右 买什么牌子手表好 五千块钱左右,有哪些手表适合购买? 想买个手表,5000左右的,什么牌子的比较好 购物预算在五千元以内的话,有哪些手表适合购买呢? 想买块男士手表,35岁左右男士,5000左右那个牌子... 预算5000想买块手表请问什么牌子什么系列的比较好? 五千块钱左右,有哪些手表适合购买呢? 怎么查询EMS收货人是否收到? 怎么查找是否收到邮件 根据快递货号,如何查询邮件到达情况 如何查询邮件包裹已经到达什么地方了? 怎样做好火灾防范措施 工作场所应做哪些火灾预防措施?发生火灾后如何处置? 如遇到火灾我们学生应该怎么做? 正确的火灾防范措施有哪些 怎样预防火灾,有几种灭火的方法? 预防森林火灾的措施有哪些? 如何防止火灾的发生? 新形势下如何做好火灾防控 java中的几个集合类 JAVA中几种集合(List、Set和Map)的区别 朴信惠人品怎么样?她和李承焕的事情是不是真的? 朴信惠官宣婚讯,婚前已意外怀孕,其男友有何背景? 蔡琳和李承焕为什么离婚? 朴信惠演过的电视剧有哪些? 朴信惠演过什么韩剧啊? 朴信惠在《哥》中的形象是什么样的? 朴信惠是谁?什么背景~ 朴信惠13岁就进演艺圈 拍天国的阶梯了? 韩国女演员有哪些? 朴信惠是怎么被导演发掘的?
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com