集合概念与作用

1现实生活中把很多事物凑在一起就是集合。java中的集合类:是一种工具,就像是容器,存储任意数量的有共同属性的对象。

2在类的内部,对数据进行组织;

简单而快速的搜索大数量的条目

有的集合借口,提供了一系列排列有序的元素,并且可以在序列中间快速的插入或者删除有关元素。

有的集合接口,提供了映射关系,可以通过关键字去快速查找到对应的唯一对象,而这个关键字是可以是任意类型。

3 Collection(List ,Queue,Set )

1)List和Queue:排列有序的可以重复的

2)Set:无序的

3)常用的是List(序列),Set(集)

ArrayList HashSet HashMap三个比较常用

List接口,有序可重复,可以精确的控制每个元素的插入位置,或删除某个位置的元素

ArrayList,数组序列,是List的一个重要实现,底层是有数组实现的。

1)对象存入集合都会变成object类型,取出时需要类型转换

2)add()添加一个值

add("位置","值")添加到指定位置(当位置的值大于当前最大值,则会出现异常(indexOutOfBoundsException))

addAll(Arrays.asList(数组));

Course[] course={new Course("2", "java"),new Course("3", "english")};

coursesToSelsct.addAll(Arrays.asList(course));

3)取得List中元素的方法

先获得List的长度,size()

然后用get();

  

  通过迭代器遍历List

迭代器不具备存储功能,依赖于某个集合存在,不能单独存在。还有另一种方法for each()

Iterator it=coursesToSelect.Iterator()

while(it.hashNext())

  {

    course cr=(course)it.next();    

  }

for(Object obj:courseToSelect)//放入到集合中自动变成、object类型

5)修改List中的元素Set(“索引位置”,“新元素”)方法

6)删除List中的元素remove()&removeAll()

删除前先同get(“位置”)获取对应的元素,打印输出

remove((Course)courseToSelect.get("位置"))

   

  removeAll(),其中arraysList.asList()方法是用来把数组转化为集合类型

7)泛型,往集合中添加特定的类型的对象,会在编译期间进行类型检查,可以直接指定类型获取集合元素(不需要进行类型转换)

  public List<Course> course

    public TestGeneric(){

      this.course=new ArrayList<Course>();

    }

泛型中可存入其子类型的对象实例

泛型中的限定类型不能使用基本类型。

List<int> list=new ArrayList<int>()-->错的,int是基本类型

List<Intger> list=new ArrayList<Integer>()

Set接口及其实现类--HashSet(没有类似List提供Set()方法修改数据)

1)set中没有get()方法,只能用foreach,iterator方法遍历出每一个数据,且执行两次可能得到结果的顺序不一致

2)set集合无序,不可重复 。保存的是唯一独有的一个数据对象引用,并且可以添加一个null

java集合基础的更多相关文章

  1. Java 集合基础详细介绍

    一.Java集合框架概述 集合.数组都是对多个数据进行存储操作的结构,简称Java容器.此时的存储,主要指的是内存层面的存储,不涉及到持久化的存储(.txt, .jpg, .avi,数据库中).Jav ...

  2. Java 集合基础入门,看这篇就够了

    集合 1.父接口:Collection java.util.Collection 是进行单对象保存的最大父接口,即每次利用 Collection 接口都只能保存一个对象信息.定义如下: public ...

  3. Java 集合基础知识 List/Set/Map

    一.List Set 区别 List 有序,可重复: Set 无序,不重复: 二.List Set 实现类间区别及原理 Arraylist 底层实现使用Object[],数组查询效率高 扩容机制    ...

  4. java集合基础篇 简单总结

    昨天晚上看了编程思想4的持有对象,所以把学到看到的一些记记背背的方面给总结一下. java的容器主要分为两类,一个是实现了接口Collection的一类,还有一个是实现了Map接口的一类. 继承Col ...

  5. java 集合基础(适用单线程)

    1.集合树状: Collection ├List │├LinkedList │├ArrayList │└Vector │ └Stack └Set │├HashSet │├TreeSet │├Linke ...

  6. Java基础19:Java集合框架梳理

    更多内容请关注微信公众号[Java技术江湖] 这是一位阿里 Java 工程师的技术小站,作者黄小斜,专注 Java 相关技术:SSM.SpringBoot.MySQL.分布式.中间件.集群.Linux ...

  7. Java Properties集合基础解析

    Java Properties集合基础解析 本期学习的properties集合是项目中经常用到的操作 什么是Properties集合? java.util.Properties集合继承于Hashtab ...

  8. 基础篇:JAVA集合,面试专用

    没啥好说的,在座的各位都是靓仔 List 数组 Vector 向量 Stack 栈 Map 映射字典 Set 集合 Queue 队列 Deque 双向队列 关注公众号,一起交流,微信搜一搜: 潜行前行 ...

  9. [ Java学习基础 ] Java的对象容器 -- 集合

    当你有很多书时,你会考虑买一个书柜,将你的书分门别类摆放进入.使用了书柜不仅仅使房间变得整洁,也便于以后使用书时方便查找.在计算机中管理对象亦是如此,当获得多个对象后,也需要一个容器将它们管理起来,这 ...

随机推荐

  1. 每天一个linux命令(47)--scp命令

    scp是secure  copy 的简写,用于在Linux 下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝而不能跨服务器,而且scp传输是加密的.可能会稍微影响一下速度.当 ...

  2. 不要怂,就是GAN (生成式对抗网络) (六):Wasserstein GAN(WGAN) TensorFlow 代码

    先来梳理一下我们之前所写的代码,原始的生成对抗网络,所要优化的目标函数为: 此目标函数可以分为两部分来看: ①固定生成器 G,优化判别器 D, 则上式可以写成如下形式: 可以转化为最小化形式: 我们编 ...

  3. MES工具机器列表功能操作

    概述 在机器权限组.限制工序变更等其他情况下,有时候需要重启中间件才能起作用,这样会直接影响其他人员的加工情况.为了改善这种情况,现在MES工具中新加了一个功能,可以单独重启某一个机器,其它机器不受影 ...

  4. Spring框架(6)---AspectJ实现AOP

    AspectJ实现AOP 上一篇文章Spring框架(4)---AOP讲解铺垫,讲了一些基础AOP理解性的东西,那么这篇文章真正开始讲解AOP 通过AspectJ实现AOP要比普通的实现Aop要方便的 ...

  5. Java调度框架Quartz简单示例

    Quartz的大名如雷贯耳,这里就不赘述,而且本文也不作为深入探讨,只是看完Quartz的官方文档后,下个简单示例,至少证明曾经花了点时间学习过,以备不时之需. Quartz使用了SLF4J,所以至少 ...

  6. Eclipse的Spring IDE插件的安装和使用

    Spring IDE是Spring官方网站推荐的Eclipse插件,可提供在研发Spring时对Bean定义文件进行验证并以可视化的方式查看各个Bean之间的依赖关系等. 安装 使用Eclipse M ...

  7. C++ 11 学习2:空指针(nullptr) 和 基于范围的for循环(Range-based for loops)

    3.空指针(nullptr) 早在 1972 年,C语言诞生的初期,常数0带有常数及空指针的双重身分. C 使用 preprocessor macroNULL 表示空指针, 让 NULL 及 0 分别 ...

  8. SQLServer存储过程实现单条件分页

    SQLServer Procedure Pagination_basic: ALTER PROCEDURE [qiancheng].[Pagination_basic] ( ), --name of ...

  9. html to pdf

    C++ Library to Convert HTML to PDF html2pdf PrinceXML 收费 CutePDF Ghostscript PDFDoc VisPDF PDFDoc Sc ...

  10. 每天一个Linux命令 4

    Linux系统关机命令 shutdown -h 时间 init 0 poweroff Linux系统注销命令 logout 或者是快捷键 Ctrl+d Linux系统重启命令 reboot Linux ...