addAll、containsAll
集合的批量操作方法
* addAll(Collection c)
* 将给定集合中的所有元素添加到当前集合
* 执行完毕后,若当前集合元素发生了改变就返回true。
*
* containsAll(Collection c)
* 判断当前集合是否包含给定集合中的所有元素
代码://addAll与containsAll的演示
import java. util .ArrayList ;
import java. util .Collection ;
import java. util .HashSet ;
import java. util .LinkedList ;
public class CollectionDemo1 {
/**
* 集合的批量操作方法
* addAll(Collection c)
* 将给定集合中的所有元素添加到当前集合
* 执行完毕后,若当前集合元素发生了改变就返回true。
*
* containsAll(Collection c)
* 判断当前集合是否包含给定集合中的所有元素
*
@param args
*/
public static void main (String [] args ) {
Collection c1 =
new
ArrayList () ;
c1 . add( "java" );
c1 . add( "c" );
c1 . add( "c++" );
System .out . println( c1 );
Collection c2 =
new
HashSet () ;
c2 . add( "php" );
c2 . add( "objective-c" );
c2 . add( "c#" );
c2 . add( "java" );
System .out . println( c2 );
/**
* 将c2集合中的元素添加到c1中
*/
c1 . addAll( c2 );
System .out . println( c1 );
Collection c3 =
new
LinkedList () ;
c3 . add( "c++" );
c3 . add( "php" );
c3 . add( "java" );
c3 . add( "vb" );
System .out . println( c3 );
/**
* 判断c1集合是否包含c3集合中的元素
*/
boolean contains =
c1 . containsAll( c3 );
System .out . println( "全部包含:" + contains) ;
}
}
输出结果:
[java, c, c++]
[php, java, c#, objective-c]
[java, c, c++, php, java, c#, objective-c]
[c++, php, java, vb]
全部包含:false
注:Hashset()如果内部数据没有变化,变换add位置,顺序不变。
Collection c2 =
new
HashSet () ;
c2 . add( "php" );
c2 . add( "objective-c" );
c2 . add( "c#" );
System .out . println( c2 );
注:有List的集合是有序的
remove()方法:删除集合中的元素(从当前集合中删除第一个与给定元素equals比较为true的元素)
代码:remove()方法的演示
package day04;
import java. util .ArrayList ;
import java. util .Collection ;
public class CollectionDemo2 {
/**
* 删除元素
*
@param args
*/
public static void main (String [] args ) {
Collection c =
new
ArrayList () ;
//day03.point
c .add (
new
Point (1 , 2)) ;
c .add (
new
Point (3 , 4)) ;
c .add (
new
Point (5 , 6)) ;
System .out . println( c );
Point p =
new
Point ( 1, 2 );
/**
* boolean remove(E e)
* 从当前集合中删除第一个与给定元素equals比较为true的元素
*/
boolean tf = c .remove ( p) ;
System .out . println( c );
}
}
* 遍历集合
* Collection提供了遍历集合的统一方式:迭代器模式
*
*
Interator iterator()
* 该方法返回一个用于遍历当前集合的迭代器
*
*
Interator 本身是一个接口,不同的集合自行实现遍历当前集合的迭代器实现类
* 不过我们无需记住每一个子类,只需将他们看作迭代器即可
*
* 迭代器遍历集合提供了统一的方式,遍历应遵循:问取删,其中删除不是必要操作