Jvav Collection-List
package 集合; import java.util.ArrayList;
import java.util.Collection; /**
* 集合和数组的区别:
* 1、长度
* 数组长度固定
* 集合长度不定
* 2、内容不同
* 数组存储的是同一种元素
* 集合可以存储不同类型的元素
* 3、存储类型
* 数组可以存储基本类型数据,也可以存储引用数据类型
* 集合只能存储引用类型
*
* 结构图
* ArrayList
* List Vector
* LinkedList
* Collection
* HashSet
* Set
* TreeSet
* Collection功能概述:
* 1、添加
* add(Object o) addAll(Collection c)
* 2、删除
* clear() 移除所有元素
* remove(Object o)
* removeAll(Collection c)
* 3、修改
* 4、获取
* Iterator<E> iterator()
* 5、长度
* int size()
* 6、判断
* contains(Object o) containAll(Collection c) imEmpty()
* 7、retainAll(Collection c) 两个集合都有的元素 */
/**
* 迭代器遍历
* Iterator it = c.iterator(); //返回的肯定是子类对象,这里是多态
* it.next(); //移动到下一个 不要在一个语句中多次调用next方法,
* 因为对象会变
* it.hasNext() //判断是不是有下一个对象
* 迭代器遍历元素的时候,通过集合是不能修改元素的
* 解决办法:
* 1.迭代器迭代元素,迭代器修改元素 it.add()
* 2.集合遍历元素,集合修改元素(for)
*
*/ /**
* List特点:
* 1.与set不同,允许重复元素。可根据索引获取对象
* 2.有序的collection,
* 3.特有功能:
* 1.添加功能 add(int index , object element) 在指定位置添加元素
* 2.获取功能 get(int index) //获取指定位置的元素
* 3.列表迭代器 ListIterator listIterator() List集合特有的迭代器
* 4.删除功能 remove(int index) 根据索引删除元素,返回被删除的元素
* 5.修改功能 set(int index,Object element) 返回被修改的元素
*/
/**
* List的子类特点:
* ArrayList:
* 底层数据结构是数组,查询快,增删慢
* 线程不安全,效率高
* Vector: //一般不同
* 底层数据结构是数组,查询快,增删慢
* 线程安全,效率低
* LinkedList:
* 底层数据结构是链表,查询慢,增删慢。
* 线程不安全,效率高。
* 常见数据结构
* 栈 先进后出
* 队列 先进先出
* 数组 查询慢,增删快
* 链表 查询慢,增删快
*
*/
public class 集合List {
public static void main(String[] args) {
//创建集合对象
Collection c = new ArrayList();
}
}
Jvav Collection-List的更多相关文章
- Java基础Collection集合
1.Collection是所有集合的父类,在JDK1.5之后又加入了Iterable超级类(可以不用了解) 2.学习集合从Collection开始,所有集合都继承了他的方法 集合结构如图:
- Collection集合
一些关于集合内部算法可以查阅这篇文章<容器类总结>. (Abstract+) Collection 子类:List,Queue,Set 增: add(E):boolean addAll(C ...
- iOS之解决崩溃Collection <__NSArrayM: 0xb550c30> was mutated while being enumerated.
崩溃提示:Terminating app due to uncaught exception 'NSGenericException', reason: '*** Collection <CAL ...
- [Java Collection]List分组之简单应用.
前言 今天有一个新需求, 是对一个List进行分组, 于是便百度到一些可用的代码以及我们项目使用的一些tools, 在这里总结下方便以后查阅. 一: 需求 现在我们一个数据库表t_series_val ...
- Java Collection开发技巧
Java Collection(集合) 集合中的一些技巧: 通过Collections类的静态方法,可以对集合进行一些操作 1 java.util.List<Integer> number ...
- 浅谈Collection集合
俗话说:一个东西,一件事都离不开三句话:"是什么,为什么,怎么办" 集合是什么: 集合简单的说一个数组集合的高级体现,用来存储数据或对象的容器: 集合为什么存在: 集合只是体现了对 ...
- Backbone中的model和collection在做save或者create操作时, 如何选择用POST还是PUT方法 ?
Model和Collection和后台的WEB server进行数据同步非常方便, 都只需要在实行里面添加一url就可以了,backbone会在model进行save或者collection进行cre ...
- Collection和Collections的区别?
Collection 是接口(Interface),是集合类的上层接口. Collections是类(Class),集合操作的工具类,服务于Collection框架.它是一个算法类,提供一系列静态方法 ...
- Unity性能优化(3)-官方教程Optimizing garbage collection in Unity games翻译
本文是Unity官方教程,性能优化系列的第三篇<Optimizing garbage collection in Unity games>的翻译. 相关文章: Unity性能优化(1)-官 ...
- MyBatis中collection (一对一,一对多)
MyBatis学习:http://www.mybatis.org/mybatis-3/zh/index.html 大对象InsuranceDetailsVO: com.quicksure.mobile ...
随机推荐
- 关于命名空间 namespace的总结
namespace 有作用的类型 类.函数.常量关键字namespace必须在所有代码之前 除用于编码的declare语句 namespace Myproject; const A = 1; cla ...
- April Fools Day Contest 2019 A. Thanos Sort
A. Thanos Sort time limit per test 1 second memory limit per test 256 megabytes input standard input ...
- jmeter在linux上运行
若需在linux操作系统上运行jmeter,则需要以命令行的形式运行. 前提条件:linux环境下配置好jdk.jmeter的环境变量等. 1.首先在Windows的图形化界面做好脚本,设置好并发用户 ...
- 【转】右键的 在 vs 中打开 怎么去掉
源地址:https://blog.csdn.net/weicaijiang/article/details/78818522 HKEY_CLASSES_ROOT\Directory\backgroun ...
- [原创]用WinRAR实现VC源代码快速压缩创建
[原创]用WinRAR实现VC源代码快速压缩创建 by edata @ cnblogs.com/edata 2017-5-8 22:31:57 我们有的时候需要对vc项目压缩打包,因为vc项目的无关文 ...
- HDU6301-2018ACM暑假多校联合训练1004-Distinct Values
题意是一个长度为n的序列,给你m组区间(l,r),在这个区间里不能填入重复的数字,同时使整个序列字典序最小 同学用的优先队列,标程里使用的是贪心同时使用set维护答案序列 贪心是先采用pre数组来确定 ...
- springboot集成巨杉数据库
springboot倾向于约定优于配置,所以大大简化了搭建项目的流程,包括各种数据源的配置,接下来就和大家分享下最近用到的巨杉数据源连接池的配置 1.现在配置文件中定义巨杉连接池的各种连接信息,至于每 ...
- 跟我一起读postgresql源码(五)——Planer(查询规划模块)(下)
上一篇我们介绍了查询规划模块的总体流程和预处理部分的源码.查询规划模块再执行完预处理之后,可以进入正式的查询规划处理流程了. 查询规划的主要工作由grouping_planner函数完成.在具体实现的 ...
- 魔方方法之--类的构造(__init__,__new__)和析构(__del__)方法
构造方法(参见小甲鱼入门教程) __ init__()方法:类的初始化方法,初始化类对象时被调用,需要的时候再调用它 注意点:这个方法的返回值必须是None class Rectangle(): de ...
- java的几种对象(PO,VO,DAO,BO,POJO,DTO)解释
一.PO:persistant object 持久对象,可以看成是与数据库中的表相映射的java对象.最简单的PO就是对应数据库中某个表中的一条记录,多个记录可以用PO的集合.PO中应该不包含任何对数 ...