您的位置:首页 > 编程语言 > Java开发

java笔记_集合

2015-11-16 19:52 387 查看
集合概述:

java的思想是面向对象思想,所以就涉及到用容器来储存对象,而对象数组是可以存储对象

但是数组有一个缺点就是长度固定,为了突破这一限制 ,集合就应运而生

数组和集合的优缺点:
长度:数组固定 集合可变

内容:集合只能存储引用类型 数组可以存储基本类型也可以存储引用类型

集合框架:

Collection(单列集合的根接口):
list接口:有序(存和取顺序一致),有索引可以存储重复

   ArrayList
    LinkedList      Vector

    数组实现
     链表实现       数组实现

set接口:正好相反  无序(存和取顺序不一致),有索引可以存储不可以重复

   HashSet          treeSet

   哈希算法
   二叉树算法

父类引用指向子类对象

Collection c = new ArrayList();

双列集合:
Map
HashMap
TreeMap

collection方法:

add()添加方法:
如果是List集合,一直返回true

如果是Set集合,如果存储重复内弄就返回false

ArrayList,父类重写了toString()方法

remove()删除方法:

clear()清空集合:

c.contatins() 判断是否包含

boolean b = c.contains("b"

c.isEmpty() 判断是否为空

int size() 获取元素的个数

集合长度:c.size();

字符串长度:s.length();

数组长度:arr.length;

ArrayList:查询快 增删慢 不安全 效率高

LinkedList:查询慢 增删快 不安全 效率高

Vector:查询快 增删慢 安全 效率低

泛型:
泛型概述:
泛型是一种泛泛的类型,泛指某一种类型,是在创建对象或者调用方法或者实现接口才明确的类型
泛型好处
提高安全性(将运行期的错误转换到编译期) 
省去强转的麻烦

泛型使用注意事项
1)<>中放的必须是引用数据类型 
2)前后的泛型必须一致,或者后面的泛型可以省略不写(1.7的新特性菱形泛型) (建议后面的也写全)
3)在创建对象或者调用方法或者实现接口明确泛型的时候,尽量不要明确成Object,因为这样做没有意义(泛型的由来就是由Object的转型的问题得到的)
4)泛型是JDK1.5出现的

泛型类: public class 类名<泛型类型1,…>

泛型方法: public <泛型类型> 返回类型 方法名(泛型类型 变量名)

泛型静态方法: public static <泛型类型> 返回类型 方法名(泛型类型 变量名)

泛型接口:public interface 接口名<泛型类型>

子类在实现父接口的时候 可以明确泛型,也可以直接沿用父类的泛型
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: