码迷,mamicode.com
首页 > 编程语言 > 详细

Java复习 之容器

时间:2018-09-01 23:59:02      阅读:342      评论:0      收藏:0      [点我收藏+]

标签:增强   而且   div   size   pac   png   remove   类对象   定义   

 

小生快要准备找工作了 现在开始复习一下Java基础之容器

技术分享图片

 

Set和List是一个个往里面存 Map是两个两个往里面装

所谓重复指的是他们互相equals

Collection 接口定义了存取一组对象的方法,其子接口Set和List分别定义了存储方式

Set中的数据对象没有顺序并且不可以重复

List中的数据对象有顺序并且可以重复

Map接口定义了健值映射对的存储方法

1.Collection中的方法

技术分享图片

例1.

package com.hw.Prepare;

import java.util.*;

public class test3 {
        public static void main(String[] args){
                Collection a = new ArrayList();
                a.add(new Integer(1));
                a.add(new String("加油"));
                a.add(new String("1331"));
                System.out.println(a.size());
                System.out.println(a);
        }
}

运行结果

技术分享图片

容器类对象在调用remove,contains等方法时会先比较对象是否相等,这将会涉及到对象类型的equals和hashcode方法,对于自定义的类型,需要重写equals和hashcode方法以实现自定义对象的对象相等规则

例如 增加Name类相等的equals和hashcode的方法如下

技术分享图片

hashcode经常作为索引,能方便地找到对象的位置 效率比较高

Iterator:

技术分享图片

例子1:

技术分享图片

例子二:

技术分享图片

增强的for循环

技术分享图片

Set接口是collection的子接口,Set接口是collecion的子接口,set接口没有提供额外的方法,但是实现set接口的容器类中的元素是没有顺序的,而且不可以重复。

set容器可以跟数学中的集合相对应

Hashset、TreeSet

技术分享图片

retainall

求交集

技术分享图片

ArrayList 数组 LinkList 链表

技术分享图片

例子

技术分享图片

 

java.util.collections

技术分享图片

 

 技术分享图片

如何选择数据结构

衡量标准:读的效率和改的效率

Array读快改慢

Linked改快读慢

Hasn两者之间

 

Map

技术分享图片

不能重复指的是equals 用hashcode比较效率比较高

例子

技术分享图片

jdk1.5可以自动打包 自动包装为对象 或自动把对象转为基础类型

例子

技术分享图片

例子

技术分享图片

改成自动打包 解包

技术分享图片

泛型:

技术分享图片

例子2

技术分享图片

例子

技术分享图片

总结

技术分享图片

 

Java复习 之容器

标签:增强   而且   div   size   pac   png   remove   类对象   定义   

原文地址:https://www.cnblogs.com/frankzone/p/9571646.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!