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

    例子

    总结

  • 相关阅读:
    bzoj_auto_submiter(辣鸡Py毁我青春系列)
    听说“辣鸡小隔膜”出V1.3了?
    shell脚本:统计分析 /home/ 目录用户磁盘使用情况
    shell脚本:DNS自检脚本
    Linux命令集锦:ssh命令
    Linux用户权限
    Linux文件属性
    Linux命令集锦:chown命令
    Linux命令集锦:chmod命令
    Linux命令集锦:tmux命令
  • 原文地址:https://www.cnblogs.com/frankzone/p/9571646.html
Copyright © 2011-2022 走看看