文档章节

collection集合的介绍

L
 Lucky_Me
发布于 2017/06/22 00:57
字数 1046
阅读 6
收藏 0
点赞 0
评论 0

1. 内容摘要

2. collection常用方法

 

1       Collection集合常用方法

1.1   添加

 

1.2   判断功能

 

1.3   获得集合中元素长度

 

1.4   获得集合中的元素

 

1.5   删除功能

 

1.6   将集合转数组

3.代码

package cn.ma.com;

import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
import java.util.List;

/**
 * Collection 集合
 * 1.Collection 集合 分类
 *         Collection
            |--List
                |--ArrayList
                |--Vector
                |--LinkedList
            |--Set
                |--HashSet
                |--TreeSet 
 *    2.常用方法
 *            2.1   增加 
 *                        add(E e)  :添加一个对象到集合     成返回true  否则返回 false
 *            2.2  判断     
 *                    contains :如果此 collection 包含指定的元素,则返回 true。更确切地讲,
 *                    当且仅当此 collection 至少包含一个满足 (o==null ? e==null : o.equals(e)) 的元素 e 时,返回 true。 
 *            2.3   获得长度
 *            2.4   获取内容
 *            2.5   删除 
 *            2.6   集合转数组
 *
 */

public class collectionDemo {
    public static void main(String[] args) {
        List<String> list = new ArrayList();
        /**
         * 2.1  增加
         * 
         */
        //                        add(E e)  :添加一个对象到集合     成返回true  否则返回 false
        boolean add = list.add("hello");
        boolean add2 = list.add(null);
        System.out.println(add);//true
        System.out.println(add2);//true
            System.out.println("----------------------------------");
        /**2.2  判断  
         * 2.2.1  contains 判断字符是包含在另一个字符串中
         *     
 *                    contains :如果此 collection 包含指定的元素,则返回 true。更确切地讲,
 *                    当且仅当此 collection 至少包含一个满足 (o==null ? e==null : o.equals(e)) 的元素 e 时,返回 true。
 *            2.2.2    equals(Object o) 
 *                     比较此 collection 与指定对象是否相等。
 *            2.2.3   isEmpty()
 *                        如果此 collection 不包含元素,则返回 true。

         */
            Collection c= new ArrayList();
            c.add("good");
            c.add("evening");
            c.add("Marry");
            System.out.println("集合c中是否包含字符串 Marry:"+c.contains("Marry"));
            System.out.println("集合c中是否包含字符串 hello:"+c.contains("hello"));
            System.out.println("-----------");
            System.out.println("c集合与  字符串good对象是否相同:"+c.equals("good"));
            System.out.println("-----------");
            System.out.println("c集合是否为空:"+c.isEmpty());
            c.clear();//清除集合c中的所有元素
            System.out.println("c集合是否为空:"+c.isEmpty());
            System.out.println("------------------------------------");
            /**
             * 3.  获得 集合 长度
             */
            Collection c2 = new ArrayList();
            c2.add("hello");
            c2.add("world");
            System.out.println("集合c2中的有"+c2.size()+"元素");
            System.out.println("------------------------------------");
            /**
             * 4.  获取内容   iterator() 
             *                     hasNext():判断下一个元素是否存在
             *                     next():得到下一个元素
             */
            Collection  c3 = new ArrayList();
            c3.add("唐僧");
            c3.add("孙悟空");
            c3.add("猪八戒");
            c3.add("沙僧");
            c3.add("白龙马");
            Iterator it = c3.iterator();
            while(it.hasNext()){
                System.out.println(it.next());
            }
            System.out.println("------------------------------------");
            /**
             * 2.5   删除 
             *         2.5.1  remove(obeject o);  从此 collection 中移除指定元素的单个实例,成功返回 true 失败false
             *         2.5.2   clear()     清除集合中的所有元素
             */
            Collection c4 = new ArrayList();
            c4.add("你好");
            c4.add("我的世界");
            c4.add("英雄联盟");
            c4.add("LOL");
            System.out.println("移除元素之前集合c4只的元素个数是:"+c4.size());
            
            boolean rm = c4.remove("LOL");//移除 LOL
            System.out.println("remove掉LOL后集合c4中剩余的元素是:"+c4.size());
            System.out.println("是否移除了LOL对象:"+rm);
            c4.clear();// 清除c4集合中所有元素
            System.out.println("clear集合c4后集合c4中的元素个数是:"+c4.size());
            System.out.println("----------------------------------------------");
            /**
             * 2.6 将集合转数组
             *             toArray()   返回包含此 collection 中所有元素的数组。
             */
            Collection c5 = new ArrayList();
            c5.add("西游记");
            c5.add("三国演义");
            c5.add("红楼梦");
            c5.add("水浒传");
                Object[] arr = c5.toArray();//将集合转数组
                for (int i = 0; i < arr.length; i++) {
                    System.out.println(arr[i]);
                }
    }

}
4.案列

4.1 学生类

4.2 测试类

4.3 代码

4.3.1 学生类 代码

package cn.ma.coms2;
/**
 * 学生类
 *        
 */
public class Student {
    private String name;
    private int age;
    //--------------------------------1. getXxx/setXxx------------------------------------
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }
    //----------------2.无参构造方法----------------------------------------------
    public Student() {
        super();
        // TODO Auto-generated constructor stub
    }
    //---------------------3.带参数构造-----------------------------------------
    public Student(String name, int age) {
        super();
        this.name = name;
        this.age = age;
    }
    //-------------------4.toString方法------------------------------------------
    @Override
    public String toString() {
        return "Student [name=" + name + ", age=" + age + "]";
    }
    //----------------------5.hashCode--------------------------------------
    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + age;
        result = prime * result + ((name == null) ? 0 : name.hashCode());
        return result;
    }
    //--------------------6.equals----------------------------------------------------
    @Override
    public boolean equals(Object obj) {
        if (this == obj)
            return true;
        if (obj == null)
            return false;
        if (getClass() != obj.getClass())
            return false;
        Student other = (Student) obj;
        if (age != other.age)
            return false;
        if (name == null) {
            if (other.name != null)
                return false;
        } else if (!name.equals(other.name))
            return false;
        return true;
    }
}
 

4.3.2 测试类 代码

package cn.ma.coms2;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

/**
 *集合测试 存放引用类型的数据 
 *
 */

public class Test {
        public static void main(String[] args) {
            //--------1.集合-----------
            List<Student> list = new ArrayList<Student>();
            //--------2.造对象----------------
            Student s1= new Student();
            s1.setName("张凡");
            s1.setAge(25);
            Student s2= new Student();
            s2.setName("刘能");
            s2.setAge(36);
            //-------3.将对象放到集合中--------------
            list.add(s1);
            list.add(s2);
            list.add(new Student("小娇",5));
            //----------4.使用iterator遍历集合--------------------------
            Iterator<Student> it = list.iterator();
            while(it.hasNext()){
                Student s = it.next();
                System.out.println(s.getName()+"   "+s.getAge());
            }
        }
}
 

 

© 著作权归作者所有

共有 人打赏支持
L
粉丝 6
博文 145
码字总数 42078
作品 0
美国
【Java入门提高篇】Java集合类详解(一)

今天来看看Java里的一个大家伙,那就是集合。 集合嘛,就跟它的名字那样,是一群人多势众的家伙,如果你学过高数,没错,就跟里面说的集合是一个概念,就是一堆对象的集合体。集合就是用来存...

MFrank ⋅ 05/18 ⋅ 0

集合类操作优化经验总结(一)

本文首先针对 Java 集合接口进行了一些介绍,并对这些接口的实现类进行详细描述,包括 LinkedList、ArrayList、Vector、Stack、Hashtable、HashMap、WeakHashMap 等,然后对一些实现类的实现...

Mysoft ⋅ 2015/09/24 ⋅ 0

JCF框架源码分析系列-ArrayList(二)

1、揭开ArrayList真面目 作者将在本文详细赘述日常开发中最常用集合类-ArrayList,本次JCF源码分析基于JDK1.7,主要从以下几个方向分析: UML类图关系 数据结构 接口介绍 常用、重要方法的实...

Ambitor ⋅ 2015/11/30 ⋅ 0

Java 集合系列02之 Collection架构

概要 首先,我们对Collection进行说明。下面先看看Collection的一些框架类的关系图: Collection是一个接口,它主要的两个分支是:List 和 Set。 List和Set都是接口,它们继承于Collection。...

东方神剑 ⋅ 2015/12/16 ⋅ 1

Java集合框架01-框架总览

本节摘要:从整体概述Java集合框架 一、Java集合框架架构图 Java集合框架是Java为开发者提供的工具类,集合框架被放置在 java.util.* 包下面,这些工具类从更高层面为开发者提供了数组、链表...

x_coder ⋅ 2017/11/26 ⋅ 0

Java 集合系列02之 Collection架构

概要 首先,我们对Collection进行说明。下面先看看Collection的一些框架类的关系图: Collection是一个接口,它主要的两个分支是:List 和 Set。 List和Set都是接口,它们继承于Collection。...

无信不立 ⋅ 2014/07/15 ⋅ 0

Java集合系列之Connection与Map接口宏观把控

Java集合系列之Connection与Map接口宏观把控 Hello,大家好,元旦快到了,这里提前祝大家元旦快乐,出行注意安全,回家的小伙伴能早日和家人见面,开开心心过元旦。Ok,切入主题,这篇文章,我...

⋅ 2017/12/29 ⋅ 0

详细介绍java中的数据结构

也许你已经熟练使用了java.util包里面的各种数据结构,但是我还是要说一说java版数据结构与算法,希望对你有帮助。 线性表,链表,哈希表是常用的数据结构,在进行Java开发时,JDK已经为我们...

守夜之星 ⋅ 2013/02/04 ⋅ 0

Map-HashMap-LinkedHashMap-Map.Entry-Collections-可变参数

一.Map 接口(java.util) 定义:public interface Map 介绍: (1)Map是一个接口,含有两个泛型,创建子类对象的时候,需要传递两个泛型的值; (2)将键映射到值的对象。一个映射不能包含重复的键;每...

老胡2015 ⋅ 2017/06/18 ⋅ 0

Java集合框架_三_Collection接口

第一篇博客中提到了集合中的两组接口,Collection 和 Map,它们有各自的特点,以便让开发者在编写代码有最合适的选择。从本篇开始,将逐一学习Collection接口及其子接口和实现类。 一、先啰嗦...

mrbinary ⋅ 2014/01/14 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

MySQL 数据库设计总结

规则1:一般情况可以选择MyISAM存储引擎,如果需要事务支持必须使用InnoDB存储引擎。 注意:MyISAM存储引擎 B-tree索引有一个很大的限制:参与一个索引的所有字段的长度之和不能超过1000字节...

OSC_cnhwTY ⋅ 48分钟前 ⋅ 0

多线程(四)

线程池和Exector框架 什么是线程池? 降低资源的消耗 提高响应速度,任务:T1创建线程时间,T2任务执行时间,T3线程销毁时间,线程池没有或者减少T1和T3 提高线程的可管理性。 线程池要做些什...

这很耳东先生 ⋅ 56分钟前 ⋅ 0

使用SpringMVC的@Validated注解验证

1、SpringMVC验证@Validated的使用 第一步:编写国际化消息资源文件 编写国际化消息资源ValidatedMessage.properties文件主要是用来显示错误的消息定制 [java] view plain copy edit.userna...

瑟青豆 ⋅ 今天 ⋅ 0

19.压缩工具gzip bzip2 xz

6月22日任务 6.1 压缩打包介绍 6.2 gzip压缩工具 6.3 bzip2压缩工具 6.4 xz压缩工具 6.1 压缩打包介绍: linux中常见的一些压缩文件 .zip .gz .bz2 .xz .tar .gz .tar .bz2 .tar.xz 建立一些文...

王鑫linux ⋅ 今天 ⋅ 0

6. Shell 函数 和 定向输出

Shell 常用函数 简洁:目前没怎么在Shell 脚本中使用过函数,哈哈,不过,以后可能会用。就像java8的函数式编程,以后获取会用吧,行吧,那咱们简单的看一下具体的使用 Shell函数格式 linux ...

AHUSKY ⋅ 今天 ⋅ 0

单片机软件定时器

之前写了一个软件定时器,发现不够优化,和友好,现在重写了 soft_timer.h #ifndef _SOFT_TIMER_H_#define _SOFT_TIMER_H_#include "sys.h"typedef void (*timer_callback_function)(vo...

猎人嘻嘻哈哈的 ⋅ 今天 ⋅ 0

好的资料搜说引擎

鸠摩搜书 简介:鸠摩搜书是一个电子书搜索引擎。它汇集了多个网盘和电子书平台的资源,真所谓大而全。而且它还支持筛选txt,pdf,mobi,epub、azw3格式文件。还显示来自不同网站的资源。对了,...

乔三爷 ⋅ 今天 ⋅ 0

Debian下安装PostgreSQL的表分区插件pg_pathman

先安装基础的编译环境 apt-get install build-essential libssl1.0-dev libkrb5-dev 将pg的bin目录加入环境变量,主要是要使用 pg_config export PATH=$PATH:/usr/lib/postgresql/10/bin 进......

玛雅牛 ⋅ 今天 ⋅ 0

inno安装

#define MyAppName "HoldChipEngin" #define MyAppVersion "1.0" #define MyAppPublisher "Hold Chip, Inc." #define MyAppURL "http://www.holdchip.com/" #define MyAppExeName "HoldChipE......

backtrackx ⋅ 今天 ⋅ 0

Linux(CentOS)下配置php运行环境及nginx解析php

【part1:搭建php环境】 1.选在自己需要安装的安装包版本,wget命令下载到服务器响应目录 http://php.net/releases/ 2.解压安装包 tar zxf php-x.x.x 3.cd到解压目录执行如下操作 cd ../php-...

硅谷课堂 ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部