`
春之竹
  • 浏览: 23732 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
文章分类
社区版块
存档分类
最新评论

几个常用集合的用法

 
阅读更多


集合可以归纳为三种:

 集(Set):Set集合不区分元素顺序,不可以出现重复元素。

 列表:(List):区分元素顺序,且可以出现重复元素。

 映射(Map):映射中保存成对的“键-值”(key-value),映射中不能包含重复的键,每个键最多只能映射一个值。

 

java.util.Collection接口是描述Set和List集合类型的根接口,以下是有关集合的普遍性方法。

 

  • boolean add(Object o):添加元素。
  • boolean remove(Object o):移除元素。
  • int size():返回集合的长度。
  • boolean isEmpty():是否为空。
  • boolean contains(Object o):是否包含某元素。
  • void clear():清楚集合中所有元素。
  • Iterator iterator():迭代器,用来对集合进行统一的遍历。
  • Object[] to Array():将集合转换成数组。

java.util.List是Collection的子接口,出了拥有以上方法,还有自己的方法。

 

  • void add(int index,Object element):在指定的位置添加元素。
  • Object get(int index):得到指定位置的元素。
  • Object set(int index):将指定位置的元素修改。
  • int indexOf(Object o):返回指定的元素在当前集合中的位置如果不包含该元素的话返回-1.
  • Object remove(int index):将指定位置元素移除。

java.util.Map接口描述了映射结构,可以以键集,值集,键-值集查看元素。

 

  • Object put(Object key,Object value):添加键-值对,如果在Map中已有键,则替换改键所对应的值。
  • Object get(Object key):返回key所对应的值。
  • boolean isEmpty():判断当前映射集合是否为空。
  • void clear():清空当前映射集合。
  • int size():返回当前映射中元素数目。
  • boolean containsKey(Object key):判断当前映射中是否包含指定的键的映射关系。
  • boolean containsValue(Object value):判断当前集合中是否包含指定的值的映射关系。
  • Set keySet():返回当前映射中所有的键组成的集合。
  • collection values():返回当前映射中所有的值组成的集合。

java.util.HashSet接口继承了set接口。但是遍历的时候,是无序显示的。

java.util.TreeSet接口也继承了set接口。在遍历的时候,显示出来的结果是按一定的顺序来显示的(比如按英文顺序:a,b,c,d...)

下面是一个关于上面方法的使用例子
ArrayList al=new ArrayList();
al.add("1st");//加入元素
al.add("2nd");
al.add("3rd");
System.out.println("****从输出结果来看,队列对象可以直接打印****");
System.out.println(al);
System.out.println("****size返回的值=最大索引值+1****");
System.out.println("size:"+al.size());
al.set(2,"replace");
System.out.println("****for循环遍历****");
for(int i=0;i<al.size();i++){
System.out.println(al.get(i));
}
al.add(1,new Date());//插入一个对象,该对象的索引值为1。
System.out.println("****转换为数组遍历****");
Object oal[]=al.toArray();
for(Object o:oal){
System.out.println(o);
}
System.out.println("****万用方法:while迭代遍历****");
Iterator it=al.iterator();
while(it.hasNext()){
System.out.println(it.next());
}
}

 打印出来的结果是:

****从输出结果来看,队列对象可以直接打印****
[1st, 2nd, 3rd]
****size返回的值=最大索引值+1****
size:3
****for循环遍历****
1st
2nd
replace
****转换为数组遍历****
1st
Thu Mar 17 18:25:43 CST 2011
2nd
replace
****万用方法:while迭代遍历****
1st
Thu Mar 17 18:25:43 CST 2011
2nd
replace
  
  • 大小: 52.5 KB
分享到:
评论

相关推荐

    C# 常用集合总结

    本文档对C#的几种常见的集合(BitArray, Dictionary, Hashtable, NameValueCollection, Queue, Stack)的用法作了归纳,每种集合都附有完整的测试代码。(另外一种常见集合ArrayList收录在另外一份文档:使用总结&gt;中)

    OpenSwing---Java 常用控件集合

    做方便实用的SWING控件! 欢迎大家测试并提交BUG报告. 由于个人能力和时间上的局限,希望有兴趣...如果看到有一个OpenSwing的页,并在它上面有几个可视组件的话,说明你已经配置成功了,开始你的OpenSwing可视开发之旅吧.

    sublime text福利 40多个插件集合 5款主题(完美支持sublime text3和st2)

    该集合包括了多种常用插件emmet jsFormat git相关 以及css和php js jquery html5等语言的支持增强插件等 已安装utf8和gbk插件 完美支持中文输入 包含codeIntel和cTags Filediff 侧边栏增强等一系列插件方便开发...

    java面试中出现的面试题集合,基础集合,面试宝典.zip

    常用框架:如Spring、MyBatis等框架的使用方法和内部原理都有涉及。 数据库相关:包括关系型数据库和非关系型数据库的使用,以及JDBC、MyBatis等与数据库交互的技术。 实战项目经验:分享了几个经典的Java项目,解析...

    java面试要点集合

    3、struts主要类有哪几个 4、数据库事务有什么用、什么是ACID 航天信息有限公司 1。List与Set的相同与不同之处,分别举出两个这两个接口的常用方法。(10分) 2。谈谈你对接口的理解与看法。(10分) 3。用递归...

    实验项目D、Java应用专题编程

    6、初步掌握几个常用类和接口的含义和使用。 ★专题:文件IO和数据库编程★ 1、掌握File类的使用。 2、掌握字节流IO的操作。 3、掌握字符流IO的操作。 4、初步掌握随机流操作。 5、掌握Java数据库开发(JDBC操作)...

    大数据常用的算法.docx

    聚类类似于分类,但与分类的目的不同,是针对数据的相似性和差异性将一组数据分为几个类别。属于同一类别的数据间的相似性很大,但不同类别之间数据的相似性很小,跨类的数据关联性很低。 (4)关联规则。关联规则是...

    java 程序员面试指南,常用面试题汇总解答.zip

    常用框架:如Spring、MyBatis等框架的使用方法和内部原理都有涉及。 数据库相关:包括关系型数据库和非关系型数据库的使用,以及JDBC、MyBatis等与数据库交互的技术。 实战项目经验:分享了几个经典的Java项目,解析...

    最全的oracle常用命令大全.txt

    下面按类别列出一些ORACLE用户常用数据字典的查询使用方法。 1、用户 查看当前用户的缺省表空间 SQL&gt;select username,default_tablespace from user_users; 查看当前用户的角色 SQL&gt;select * from user_...

    Android编程中常用适配器及自定义适配器用法实例分析

    本文实例讲述了Android编程中常用适配器及自定义适配器...其实很简单,说白了适配器它也是一个类,在类里面它实现了父类的这几个方法: publicint getCount() //得到数据的行数 public Object getItem(int position)

    Java大数据开发+Java大厂面试题

    准备面试Java开发岗位?不要担心!...解释什么是Java的设计模式,并列举几个常用的设计模式及其应用场景。 这些题目涵盖了Java开发中的核心概念和常见问题,帮助您准备面试。祝您面试成功,取得理想的职位!

    Java后端+Java后端中级面试题

    准备面试Java开发岗位?不要担心!...解释什么是Java的设计模式,并列举几个常用的设计模式及其应用场景。 这些题目涵盖了Java开发中的核心概念和常见问题,帮助您准备面试。祝您面试成功,取得理想的职位!

    Java面试题+Java后端中级面试题

    准备面试Java开发岗位?不要担心!...解释什么是Java的设计模式,并列举几个常用的设计模式及其应用场景。 这些题目涵盖了Java开发中的核心概念和常见问题,帮助您准备面试。祝您面试成功,取得理想的职位!

    VBA入门到进阶常用知识代码总结02

    Excel中的几个常用对象表示方法: 1、工作簿 Workbooks 代表工作簿集合,所有的工作簿,Workbooks(N),表示已打开的第N个工作簿 Workbooks (“工作簿名称”) ActiveWorkbook 正在操作的工作簿 ThisWorkBook ‘代码...

    orcale常用命令

    下面按类别列出一些ORACLE用户常用数据字典的查询使用方法。 1、用户 查看当前用户的缺省表空间 SQL&gt;select username,default_tablespace from user_users; 查看当前用户的角色 SQL&gt;select * from user_...

    全国计算机等级考试二级python的学习笔记

    全国计算机等级考试二级Python学习笔记可以从以下几个方面进行总结: 1. Python基础知识 - Python语法基础:变量、数据类型、运算符、流程控制语句等。 - Python常用内置数据结构:列表、元组、字典、集合的定义、...

    利用Matlab编写代码的便捷方法.docx

    以下是利用Matlab编写代码的几个便捷方法: ## 1. 使用函数和脚本 在Matlab中,可以使用两种方式编写代码:函数和脚本。函数是一种可以接收输入参数并输出结果的程序,而脚本则是一系列命令的集合。使用函数可以更...

    jsuites:jSuites是轻量级常见的必需javascript Web组件的集合。 它由完全响应的香草插件组成,可帮助您独立于平台,为项目带来最佳用户体验。 跨不同平台的相同JS代码库

    第一个版本在各种前端应用程序中包括几个常用的javascript工具。 jSuites可以完全轻松地与任何框架和工具集成。 第一个集合带来了以下插件: 干净整洁且响应Swift的javascript日历,日期和时间选择器。 它与jExcel...

    java8集合源码分析-javaInterview:java面试

    java8 集合源码分析 2020年深圳java打工仔找...java几个类加载器? 类加载方式? 动态代理和静态代理的区别? jdk哪个接口实现动态代理? 自定义注解? 怎么写? spring 的事务管理机制是什么形式的?怎么理解spring的事务管

Global site tag (gtag.js) - Google Analytics