小生快要准备找工作了 现在开始复习一下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());
a.add(new String("加油"));
a.add(new String(""));
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复习 之容器的更多相关文章

  1. Java复习10.Servlet编程

    Java复习10. Servlet编程知识 20131008 前言: 之前在大三下的时候,学习了一个月的JSP和Servlet知识,但是没有什么项目经验,把JSP Web开发学习实录看了前面几张,后面 ...

  2. Java多线程-并发容器

    Java多线程-并发容器 在Java1.5之后,通过几个并发容器类来改进同步容器类,同步容器类是通过将容器的状态串行访问,从而实现它们的线程安全的,这样做会消弱了并发性,当多个线程并发的竞争容器锁的时 ...

  3. 转:java多线程--同步容器

    java同步容器 在Java的集合容器框架中,主要有四大类别:List.Set.Queue.Map.List.Set.Queue接口分别继承了Collection接口,Map本身是一个接口.注意Col ...

  4. java中的容器问题

    小小的总结一下java中的容器问题. 一.三个知识点 1.迭代器 1).java.util.Interator + hasnext(); next(); remove(); 2).java.lang. ...

  5. java 复习003 之排序篇

    由java 复习003跳转过来的C语言实现版见some-sort-algorithms 快速排序(不稳定 O(n log n)) package vell.bibi.sort_algorithms; ...

  6. java 复习001

    java 复习001 比较随意的记录下我的java复习笔记 ArrayList 内存扩展方法 分配一片更大的内存空间,复制原有的数据到新的内存中,让引用指向新的内存地址 ArrayList在内存不够时 ...

  7. java复习(1)---java与C++区别

    [系列说明]java复习系列适宜有过java学习或C++基础或了解java初步知识的人阅读,目的是为了帮助学习过java但是好久没用已经遗忘了的童鞋快速捡起来.或者教给想快速学习java的童鞋如何应用 ...

  8. java集合框架容器 java框架层级 继承图结构 集合框架的抽象类 集合框架主要实现类

    本文关键词: java集合框架  框架设计理念  容器 继承层级结构 继承图 集合框架中的抽象类  主要的实现类 实现类特性   集合框架分类 集合框架并发包 并发实现类 什么是容器? 由一个或多个确 ...

  9. java 从spring容器中获取注入的bean对象

      java 从spring容器中获取注入的bean对象 CreateTime--2018年6月1日10点22分 Author:Marydon 1.使用场景 控制层调用业务层时,控制层需要拿到业务层在 ...

随机推荐

  1. 关于javascript三目

    三目运算符能使我们的代码更为简洁,因而包括小编的我也很是青睐它,不过有时候我们给予它更多的希望,小编处于学习阶段,先从笔记开始: (3>1)?console.log(1):console.log ...

  2. SerializeHelper

    using System; using System.Collections.Generic; using System.Configuration; using System.IO; using S ...

  3. Hiveserver2高可用实现

    在生产环境中使用Hive,强烈建议使用HiveServer2来提供服务,好处有: 在应用端不用部署Hadoop和Hive客户端: 相比hive-cli方式,HiveServer2不用直接将HDFS和M ...

  4. 《Linux 性能及调优指南》1.6 了解Linux性能指标

    翻译:飞哥 (http://hi.baidu.com/imlidapeng) 版权所有,尊重他人劳动成果,转载时请注明作者和原始出处及本声明. 原文名称:<Linux Performance a ...

  5. Nginx 之防盗链配置

    首先,我们需要知道通过什么来实现防盗的! http referer 是header的一部分,当浏览器向web服务器发送请求的时候,一般会带上referer,这是在告诉服务器是从哪个页面链接过来的,服务 ...

  6. jQuery插件——下拉选择框

    其实,之前也写过jQuery插件,今天写的是一个模拟select选择的下拉插件. 既然是jQuery插件,那么必然是依赖jQuery的了. 老规矩,直接上代码吧! ;(function () { $. ...

  7. PyQt5 qt desinger

    https://jaist.dl.sourceforge.net/project/eric-ide/eric6/stable/18.08/eric6-18.08.zip pip --timeout 3 ...

  8. 《算法》第四章部分程序 part 3

    ▶ 书中第四章部分程序,加上自己补充的代码,随机生成各类有向图 ● 随机生成有向图 package package01; import edu.princeton.cs.algs4.StdOut; i ...

  9. RPC框架之RMI

     一:RPC 远程过程调用 RPC(Remote Procedure Call Protocol)远程过程调用协议,通过网络从远程计算机上请求调用某种服务. 一次RPC调用的过程大概有10步: 1.执 ...

  10. 高程三 DOM对象

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta http ...