java方法中Collection集合的基本使用与方法
集合类的由来,
对象用于封闭特有数据,对象多了需要存储,如果对象的个数不确定就使用集合容器进行存储。
集合特点:
1.用于存储对象的容器。
2.集合的长度是可变的。
3.集合中不可以存储基本数据类型值。
集合容器因为内部的数据结构不同,有多种具体容器。
不断的向上抽取,就形成了集合框架。

collection的常见方法:
1.添加
boolean add(Object obj); --添加
boolean addAll(Collection coll) --添加集合
2.删除
boolean remove(Ooject obj); --删除
boolean remove(Collection coll) --删除集合
void clear() --移除所有内容
3.判断
boolean contains(object obj); --判断些集合指定的元素,则返回true
boolean containsAll(Collection coll) --判断些集合指定的合集,则返回true
boolean isEmpty(): --判断集合中是否有元素。
4.获取:
int size(); --返回集合中的元素数
Iterator iterator(); --取出元素的方式:迭代器
5.其他:
boolean retainAll(Collection coll) --取交集(1,2,5; 2,4; 取2)
Object[] toArray(): --将集合转成数组。
测试:
package demo_liu.test.collection; import java.util.ArrayList;
import java.util.Collection; public class t1 {
public static void main(String[] args) {
Collection coll = new ArrayList();
//调用Collection
show(coll); Collection c1 = new ArrayList();
Collection c2 = new ArrayList(); //调用Collection
show(c1,c2);
} public static void show(Collection c1,Collection c2) {
//给c1添加元素
c1.add("1123");
c1.add("11234");
c1.add("45345");
c1.add("4564");
c1.add("6753"); //给c2添加元素
c2.add("1123");
c2.add("abc1");
c2.add("abc1");
c2.add("abc1");
c2.add("abc1"); //输出
System.out.println("c1+"+c1);
System.out.println("c2"+c2); //演示addAll() 添加集合
c1.addAll(c2); //演示removeAll 删除集合:true
// boolean b= c1.removeAll(c2);//将两个集合中的相同元素从调用RemoveAll的集合中删除例:c2.add("1123");
// System.out.println("removAll"+b);//输出 :c1[11234, 45345, 4564, 6753]
//C1:中少了c1.add("1123");
//演示retainAll
// boolean c = c1.retainAll(c2);//取交集:指两个集合中共有的数据
// System.out.println("c1"+c1); //保留和指定的集合相同的元素,而删除不同的元素。
//和removeAll功能相反。
//输入:c1[1123, 1123, abc1, abc1, abc1, abc1]
//演示ContainsAll
boolean n = c1.containsAll(c2);//包含:c1中包含c2的所有元素,没有则返回false
System.out.println(n); System.out.println("c1"+c1);
} public static void show(Collection coll) {
//1. 添加元素
coll.add("123");
coll.add("木头人");
coll.add("汐");
System.out.println("输出所有元素"+coll); //输出所有元素[123, 木头人, 汐]
System.out.println("是否包含:"+coll.contains("123")); //是否包含:true
System.out.println("个数:"+coll.size()); //个数:3
//删除‘123’:输出
coll.remove("123"); //[木头人, 汐]
System.out.println(coll);
//清空集合
coll.clear();
System.out.println("清空元素:"+coll); //清空元素:[]
System.out.println("是否有元素:"+coll.isEmpty()); //是否有元素:true
//着边和清空有没有关系, 我们先查询集合是否有元素,则返回true,再清空后,也是返回true;
}
}
java方法中Collection集合的基本使用与方法的更多相关文章
- JavaSE中Collection集合框架学习笔记(2)——拒绝重复内容的Set和支持队列操作的Queue
前言:俗话说“金三银四铜五”,不知道我要在这段时间找工作会不会很艰难.不管了,工作三年之后就当给自己放个暑假. 面试当中Collection(集合)是基础重点.我在网上看了几篇讲Collection的 ...
- JavaSE中Collection集合框架学习笔记(3)——遍历对象的Iterator和收集对象后的排序
前言:暑期应该开始了,因为小区对面的小学这两天早上都没有像以往那样一到七八点钟就人声喧闹.车水马龙. 前两篇文章介绍了Collection框架的主要接口和常用类,例如List.Set.Queue,和A ...
- java多线程中并发集合和同步集合有哪些?区别是什么?
java多线程中并发集合和同步集合有哪些? hashmap 是非同步的,故在多线程中是线程不安全的,不过也可以使用 同步类来进行包装: 包装类Collections.synchronizedMap() ...
- Java 8中Collection转为Map的方法
Java 8中java.util.stream.Collectors提供了几个方法可用于把Collection转为Map结构,本文记录了个人对其中三个的理解. Method Return Type g ...
- Collection中list集合的应用常见的方法
集合 : 用存放对象的容器(集合) Collection : 跟接口 : 单列集合 ---> List :有序的 ,元素是可以重复的. ---> ...
- java学习笔记——Collection集合接口
NO 方法名称 描述 1 public boolean add(E e) 向集合中保存数据 2 public void clear() 清空集合 3 public boolean contains(O ...
- 【Java心得总结六】Java容器中——Collection
在[Java心得总结五]Java容器上——容器初探这篇博文中,我对Java容器类库从一个整体的偏向于宏观的角度初步认识了Java容器类库.而在这篇博文中,我想着重对容器类库中的Collection容器 ...
- Collection集合的三种初始化方法
(一) java容器可以分为两大类 1)Collection其中包括List,Set,Queue 2)Map (二) Arrays.asList()方法:接受一个数组或一个逗号分隔的元素列表,并将其转 ...
- Java 8中处理集合的优雅姿势——Stream
在Java中,集合和数组是我们经常会用到的数据结构,需要经常对他们做增.删.改.查.聚合.统计.过滤等操作.相比之下,关系型数据库中也同样有这些操作,但是在Java 8之前,集合和数组的处理并不是很便 ...
随机推荐
- FreeBSD 内核中的SYSINIT分析【转】
FreeBSD kernel是一个膨大的系统, 对于这样一个大系统, 里面往往包含了大量的子系统和 模块,当系统初始化时这些模块就需要初始化, 按照通常的思路,这些初始化过程必须在某处 被显式地调 ...
- Android 它们的定义View
安卓开发过程,安卓官方控制有时来自往往不能满足我们的需求.这一次,我必须定义自己.下面我们就来看看他们的定义View: package com.example.myview; import andro ...
- git记不住用户名和密码
以前我是用svn的 , 我也是最近才用的git 虽然git 有GUI界面 , 但是我觉得还是不如svn 最开始使用git的时候我们直接clone项目的时候可能会设置全局的账号和密码 , 但是我重装系 ...
- Gamma 函数与exponential power distribution (指数幂分布)
1. Γ(⋅) 函数 Γ(α)=∫∞0tα−1e−tdt 可知以下基本性质: Γ(α+1)=αΓ(α) Γ(1)=1 ⇒ Γ(n+1)=n! Γ(12)=π√ 2. 指数幂分布(exponential ...
- zabbix 设备(自己的实践)
1. 下载源代码包 wget http://sourceforge.net/projects/zabbix/files/ 2. 解压 tar -zxvf zabbix-2.2.3.tar.gz 3. ...
- c语言学习笔记(2)——预备知识
c语言预备知识 1.cpu 内存条 硬盘 显卡 主板显示器 之间的关系 硬盘里的<猛龙过江>(双击)--->内存条 cpu---->显卡,声卡--->显示器 2.he ...
- 图形的认识(curve,surface,hypersurface)
平滑函数(smooth function): curve:曲线: 二维平面: surface:曲面: 三维空间: hypersurface:超曲面: 更高维度: 1. surface 是对平面的泛化, ...
- 微信小程序之商品属性分类
所提及的购物数量的加减,现在说说商品属性值联动选择. 为了让同学们有个直观的了解,到电商网截了一个图片,就是红圈所示的部分 现在就为大家介绍这个小组件,在小程序中,该如何去写 下图为本项目的图: wx ...
- 使用Qt installer framework制作安装包(不知道是否适合Mac和Linux?)
一.介绍 使用Qt库开发的应用程序,一般有两种发布方式:(1)静态编译发布.这种方式使得程序在编译的时候会将Qt核心库全部编译到一个可执行文件中.其优势是简单单一,所有的依赖库都集中在一起,其缺点也很 ...
- Python 绘图利器 —— ggplot
安装: 命令行:pip install ggplot 1. 杂项 NameError: name 'ggsave' is not defined. Python ggplot- ggsave func ...