zoukankan      html  css  js  c++  java
  • Java复习 之容器

    小生快要准备找工作了 现在开始复习一下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

    例子

    总结

  • 相关阅读:
    有一种努力叫“凌晨四点”
    编程思想
    小记
    团队精神与集体主义
    变量起名
    软件项目估量方法
    戏说QQ
    压力说
    AngularJS指令基础(一)
    Leetcode 1021. Best Sightseeing Pair
  • 原文地址:https://www.cnblogs.com/frankzone/p/9571646.html
Copyright © 2011-2022 走看看