java j集合_疯狂Java系列之j集合类
Collection接口中的方法
Set、List、Queue三种集合都是来自于父接口,所以C的方法可以用来操作三种集合。
boolean add(Object o):向集合中添加元素;
boolean addAll(Collection c):把集合c里所有元素添加到指定集合中;
void clear():清除集合所有元素,集合长度变成0;
boolean contains(Object o):返回该集合中是否包含指定元素;
boolean containsAll(Collectionc):返回集合中是否包含集合c里的所有元素;
boolean isEmpty():返回集合是否为空。为0返回true,否则返回false;
Iterator iterator():返回一个iterator对象,用于遍历集合里的元素;
boolean remove(Objecto):删除集合中的指定元素o,当集合中包含了一个或多个元素o时,只删除第一个符合条件的元素,返回true;
boolean removeAll(Collectionc):删除集合中符合集合c包含的所有元素(从集合中减掉集合c);
boolean retainAll(Collectionc):删除集合中集合c不包含的元素(除集合c外,其他集合都删除,与c集合的交集);
int size():返回集合中元素个数;
Object[] toArray():把集合转换成数组,所有的集合元素变成对应的数组元素;
集合是个容器,提供以上增删清空、判空方法,能够更好理解集合的作用。详细信息参考JavaAPI文档,不用生硬记牢,程序员的记忆都在手边。
示例代码:
package javaCollection;
import java.util.ArrayList;
import java.util.Collection;
import java.util.HashSet;
/**
* 操作集合方法
* @author bobo
*/
public class CollectionTest {
/*
* 操作集合方法
*/
public static void main(String[] args) {
//List
Collection b=new ArrayList();
Collection c=new ArrayList();
//添加元素add
//虽然集合中不能放基本数据类型的值,但是Java支持自动装箱;
b.add(8);
b.add("奥特曼");
c.add("小怪兽");
c.add(8);
c.add(8);
c.add(7);
c.addAll(b);
System.out.println("现在集合中有元素"+c.size()+"个");
//删除元素
c.remove(8);
System.out.println("现在集合中有元素"+c.size()+"个");
System.out.println("c集合中是否包含“小怪兽”字符串"+c.contains("小怪兽"));
System.out.println("c集合全部元素"+c);
System.out.println("=====================分割线=====================");
//Set
Collection person=new HashSet();
person.add("孙悟空");
person.add("唐三藏");
System.out.println("c集合是否包含person集合?"+c.containsAll(person));
person.add("小怪兽");
c.removeAll(person);
System.out.println("c集合全部元素"+c);
System.out.println("=====================分割线=====================");
c.clear();//清空,长度变为0
System.out.println("c集合全部元素"+c);
//元素的交集
c.add("小怪兽");
c.add(8);
c.add(8);
c.add(7);
person.add("小怪兽");
person.add("孙悟空");
person.add("唐三藏");
person.retainAll(c);//person集合和c集合的交集
System.out.println("person集合的元素"+person);
}
}
操作集合:
c集合是ArrayList,Person是HashSet,虽然实现类不同,但是都当成Collection来使用
最后的结果如下:
java j集合_疯狂Java系列之j集合类相关推荐
- java 二叉树特点_疯狂java笔记之树和二叉树
树的概述 树是一种非常常用的数据结构,树与前面介绍的线性表,栈,队列等线性结构不同,树是一种非线性结构 1.树的定义和基本术语 计算机世界里的树,是从自然界中实际的树抽象而来的,它指的是N个有父子关系 ...
- java 并发集合_《Java 7并发编程实战手册》第六章并发集合
由人民邮电出版社出版的<Java 7并发编程实战手册>终于出版了,译者是俞黎敏和申绍勇,该书将于近期上架.之前并发编程网组织翻译过此书,由于邮电出版社在并发网联系他们之前就找到了译者,所以 ...
- 疯狂java讲义价格_疯狂java讲义
封装: 封装:将对象状态信息隐藏在对象内部,不允许外部程序直接访问对象内部信息,而是用类所提供的方法访问和操作. 访问控制符:private(当前类访问权) ,protected(子类访问),publ ...
- java弹球游戏代码_疯狂java实战演义 弹球游戏代码
1 packageorg.crazyit.ball;2 3 importjava.awt.event.KeyEvent;4 importjava.awt.Image;5 importjava.awt. ...
- 疯狂java讲义视频百度网盘_疯狂Java讲义(4)配书视频-百度云
[疯狂Java讲义(4)配书视频]由分享人菜**飞5于-03-1522:21上传到百度网盘.此页面由蜘蛛程序自动抓取,以非人工方式自动生成,只作交流和学习使用.本网站本身不储存任何资源文件,其资源文件 ...
- java 秒杀多线程_秒杀多线程系列 - 随笔分类 - Joyfulmath - 博客园
随笔分类 - 秒杀多线程系列 秒杀多线程系列,该系列转载至CSDN MoreWindows: http://blog.csdn.net/morewindows/article/details/7392 ...
- java array缓存_有java数组
[JAVA零基础入门系列]Day10 Java中的数组 [JAVA零基础入门系列](已完结)导航目录 Day1 开发环境搭建 Day2 Java集成开发环境IDEA Day3 Java基本数据类型 D ...
- java获取长度_获取java长度
Java获取本机MAC地址 为什么写这个呢?因为前几天看见网上有采用windows命令获取局域网和广域网MAC,查了查可以直接用JDK的方法. MAC可用于局域网验证,提高安全性. import ja ...
- java 数据结构实例_数据结构(Java)——栈的实例
惟大英雄能本色,是真名士自风流 --易中天(百家讲坛) 1.表达式的转换 1.1 中缀表达式转前缀表达式 中缀表达式转前缀表达式有许多的方式,有加括号去除法.语法树遍历法.堆栈处理法1. 测试程序的实 ...
最新文章
- Java高并发之设计模式,设计思想
- mysql游标循环的使用
- shell 读取文件
- CountDownLatch 的使用 || enum 枚举使用的小技巧
- 如何使用Maven的archetype快速生成一个新项目(解决生成项目目录不完整问题)...
- 使用Java泛型的模板方法模式示例
- 中油即时通信电脑版_市场营销之即时通讯营销
- pixel1代android11,Pixel用户吐槽Android 11:升级后性能被劣化
- linux命令大全文档,LINUX命令大全文档
- nodejs-ORM 框架 waterline和Sails
- 关于web中的自适应布局
- 论Web App、Hybrid App、Native App三类主流APP设计差异
- 一次局域网入侵全过程
- 将淘宝客数据导入自己的数据库
- squid笔记下载_Squid笔记
- (初学者视角)二极管和三极管的工作原理
- Android4.4电池管理
- Java实现就诊排队叫号系统(使用ArrayList集合实现)
- 剑指offer刷题记录(上)
- kaggle比赛【Riiid! Answer Correctness Prediction】
热门文章
- ucsb计算机专业排名,UCSB计算机科学类专业排名,真实信息重点解读
- [吐槽]] 一句三不知
- 数学建模美赛常见模型
- 5.1[潜心创作]逃跑吧少年·追击游戏
- 基于STM32的正点原子LORA模块通信网络
- mysql的msi是什么_mysql安装(msi方式)
- Android原生GPS定位以及位置解析
- linux mint 17 升级,如何从Linux Mint 17.3升级到Linux Mint 18
- 对于求职的一些个人看法及总结
- C/C++文件读写操作——FILE*、fstream