Collection接口基本方法
来源:互联网 发布:湖南卫视电视直播软件 编辑:程序博客网 时间:2024/05/22 03:24
package cn.test.collection;import java.util.ArrayList;import java.util.Collection;/* *集合:集合是存储对象数据的集合容器 * * 集合比数组的优势: * 1.集合可以存储任意类型的对象数据,数组只能存储同一数据类型的数据 * 2.集合的长度是会发生变化的,数组的长度是固定不变的 * * ---| Collection 单例集合的根接口。 * ------|List 如果是实现类List接口的集合类,具备的特点是: 有序 ,可重复 * ------|Set 如果实现了Set接口的集合类,具备的特点是:无序,不可重复 * * Collection中的方法 * * 增加 * add(E e) 添加成功返回true添加失败返回false * addAll(Collection c) //把一个集合的元素添加到另外一个集合中去 * * 删除 * clear() 清除集合中的所有元素 * remove(Object o) 删除集合中的指定元素 * removeAll(Collection c) 删除一个集合的交集元素 retainAll(Collection c) 保留交集元素,其他非交集元素删除掉 * 查看 * size() 查看元素的个数 * 判断 * contains(Object o) * containsAll(Collection<?> c) equals(Object o) isEmpty() * 迭代 * iterator() * toArray() */public class Demo2 { public static void main(String[] args) {// Collection c = new Collection; 接口不可以创建对象,可以使用多态 Collection c = new ArrayList();//创建一个实现类对象 /*c.add("abc"); c.add(1); c.add(3.14);*/ c.add("令计划"); c.add("徐才厚"); c.add("周永康"); System.out.println("添加成功吗?"+c.add("郭美美")); //创建集合 Collection c2 = new ArrayList(); c2.add("徐才厚"); c2.add("房祖名"); c2.add("狗娃"); /* * c.addAll(c2);//把c2集合中的元素添加到c集合中去S */ /*删除方法: c.clear(); System.out.println("删除成功吗?"+c.remove("郭美美")); c.removeAll(c2); c.retainAll(c2); */ System.out.println("查看集合的元素的个数:"+c.size()); System.out.println("集合的元素:"+c); }}
package cn.test.collection;import java.util.ArrayList;import java.util.Collection;/* * 判断 * contains(Object o) * containsAll(Collection<?> c) equals(Object o) isEmpty() * */class Person{ int id; String name; public Person(int id, String name) { this.id = id; this.name = name; } @Override public String toString() { // TODO Auto-generated method stub return "{编号:"+this.id+" 姓名:"+this.name+"}"; } @Override public boolean equals(Object obj) { // TODO Auto-generated method stub Person p = (Person)obj; return this.id== p.id; } //java规定一般重写了equals方法,那么就会从写hashCode方法 @Override public int hashCode() { // TODO Auto-generated method stub return this.id; }} class Dog{}public class Demo3 { public static void main(String[] args) { /*Collection c = new ArrayList<>(); c.add("令计划"); c.add("徐才厚"); c.add("周永康"); System.out.println("判断集合是否是空:"+c.isEmpty()); System.out.println("判断集合是否存在指定的元素:"+c.contains("狗娃"));*/ //集合添加自定义的元素 Collection c = new ArrayList(); c.add(new Person(110, "狗娃")); c.add(new Person(120, "狗剩")); c.add(new Person(130, "狗三")); c.add(new Person(140, "狗四"));// c.contains(new Dog());//用到的是实参的equals方法 Collection c2 = new ArrayList(); c2.add(new Person(110, "狗娃")); c2.add(new Person(120, "狗剩")); c2.add(new Person(102, "陈狗")); System.out.println("c集合有包含c2集合中的所有元素吗?"+c.containsAll(c2)); //如果在现实生活中 只要身份证编号一致,那么就为同一个人,看源代码要看Arraylist的实现方法 System.out.println("存在该元素吗?"+c.contains(new Person(120, "狗剩")));//false 其实contains方法内部是依赖equal方法进行比较的 System.out.println("集合的元素是:"+c); }}
package cn.test.collection;import java.util.ArrayList;import java.util.Collection;/* * 迭代 * iterator() * toArray() * */public class Demo4 { public static void main(String[] args) { /*Collection c = new ArrayList();//创建一个实现类对象 c.add("令计划"); c.add("徐才厚"); c.add("周永康"); //集合可以存储任意类型的元素,所以需要用Object类型的数组接收 Object[] arr = c.toArray();//把集合中的元素全部存储到一个Object的数组中返回 System.out.println("数组的元素:"+c);*/ Collection c = new ArrayList(); c.add(new Person(110, "狗娃")); c.add(new Person(120, "狗剩")); c.add(new Person(130, "狗三")); c.add(new Person(140, "狗四")); Object[] arr = c.toArray(); //需求: 把编号是110的人的信息输出 /*for (int i = 0; i < arr.length; i++) { if(arr[i].equals(new Person(110, " "))){ System.out.println("编号为110的元素为:"+arr[i]); } }*/ for (int i = 0; i < arr.length; i++) { Person p = (Person)arr[i];//强制类型转换为Person存储,从Object数组中取出的元素只能使用Object类型的声明变量接收。 if(p.id == 110){ System.out.println(p); } } }}
0 0
- Collection接口基本方法
- Java 集合Collection接口的基本方法
- Collection接口方法
- Collection接口集合方法
- Collection接口常用方法
- Collection中的基本方法
- Collection中的基本方法
- Collection中的基本方法
- Collection接口常用的方法
- collection中的方法和接口
- Collection接口的常用方法
- Collection的一些基本方法
- Collection和List接口的remove方法
- Java 中Collection 接口中的toArray方法
- Java集合类:Collection接口常用方法
- Java Collection接口的常用方法
- Java集合Collection接口的一些方法
- Collection和Iterator接口方法详解
- 在 Activity 之间简单putExtra传递参数
- 《Effective Java》Second Edition中文版笔记(完整)
- Android UEventObserver
- 使用CocoaPods配置第三方类库
- springMVC 动态显示图片
- Collection接口基本方法
- 基数排序-RadixSort
- 信号与系统复习
- listview优化个人总结
- 浅谈RAID写惩罚(Write Penalty)与IOPS计算
- c语言函数参数入栈顺序
- haproxy反向代理
- django 模板标签 过滤器
- 应用防火墙原理