Java学习(十一)之集合与泛型

一、集合介绍

  1. 集合介绍
    a.TreeSet:以有序状态保持并可防止重复;
    b. HashMap: 可用成对的name/value来保存和取出;
    c. LinkedList: 针对经常插入或删除中间元素所设计的高效率集合;
    d. HashSet: 防止重复的集合,可快速地寻找相符的元素;
    e. LinkedHashMap: 类似于HashMap,但可记住元素插入的顺序,也可以设定成依照元素上次存取的先后来排序。

二、泛型

  1. 加入泛型的原因:更好的数据类型安全性;
  2. 泛型运用格式
    a.创建泛型化的实例: new ArrayList<Song>();
    b.声明与指定泛型类型的变量: ArrayList<Song> songList = new ArrayList<Song>();
    c.声明与调用取用泛型类型的方法:void foo(List<Song> list); x.foo(songList);
  3. 泛型方法有严格的类型安全性,多态会通不过编译.

三、相等性

  1. 引用相等性:引用到堆上同一个对象的两个引用时相等的,用"=="表示;
  2. 对象相等性:equals()相等和两个对象的hashCode()相等,覆盖equals()就必须覆盖hashCode()方法。

四、TreeSet和Map

  1. 元素必须实现comparable或者说明comparable;
  2. Map 必须说明键和值:HashMap<String,Integer> map = new HashMap<String,Integer>;

五、万能字符

  1. 格式:public void go(ArrayList< ? extends Animal> animals){};
  2. 说明:在方法参数中使用万能字符时,编译器会阻止任何可能破坏引用参数所指集合的行为。比如,可以使用集合元素的方法,但是无法删除和插入元素。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值