java的集合类API

1.

import java.util.ArrayList;

import java.util.Arrays;

import java.util.List;

 

/**数组转换为集合

 * 使用Arrays.asList()的静态方法可以转换为一个List集合

 * 数组职能转换为List集合

 * @author wwq

 *

 */

public class ArrayToListDemo {

public static void main(String[] args) {

// TODO 自动生成的方法存根

String[] array={"one","two","three","four"};

/*

 * 将给定的数组转换为list集合

 */

List<String> list=Arrays.asList(array);

System.out.println(list.size());

System.out.println(list);

list.set(1,"2");

for(String str:array)

System.out.println(str);

System.out.println(list);

/*所有的集合都都支持一个含有Collection类型作为参数的构造方法

 * 该构造方法又称为 复制型构造器

 * 可以在创建当前集合的同时包含给定集合中所有元素。

 *

 */

List<String> list1=new ArrayList<String>(list);

/*

 * 对于数组转换而来的集合 不可以参加新的新元素

 */

System.out.println("list:"+list);

list1.add("five");

System.out.println("list1:"+list1);

}

 

}

2.

 

import java.util.ArrayList;

import java.util.Collection;

import java.util.concurrent.ArrayBlockingQueue;

 

/*删除元素 成功删除返回true;

 * boolean remove(E e)

 *

 *

 */

public class CollectionDemo1 {

  public static void main(String[] args) {

Collection c=new  ArrayList();

c.add(new Point(1,2));

c.add(new Point(3,4));

c.add(new Point(1,2));

Point p=new Point(1,2);

/*

 * remove 方法删除元素也是依靠元素自身equal比较 的结果

 * remove会将给定元素一次与集合中的每一个元素进行比较

 * 然后删除第一个与元素equals比较为 true的元素后停止删除

 */

c.remove(p);

System.out.println(c);

}

}


3.


import java.util.ArrayList;

import java.util.Collection;

import java.util.HashSet;

/*

 * 集合操作

 */

public class CollectionDemo2 {

   public static void main(String[] args) {

      Collection c1=new HashSet();

      c1.add("java");

      c1.add("php");

      c1.add(".net");

     /*boolean addAll(Collection c)

       * 将给定集合的所有元素添加到当前集合中

       * 当添加后的当前元素发生了改变则返回TRUE

      * boolean containAll(Collection c)

       * 判断当前集合包含给定所有元素

       */

      Collection c3=new ArrayList();

      c3.add("java");

      c3.add("c++");

      c3.add("c#");

      c1.addAll(c3);

      boolean td1=c1.containsAll(c3);

      System.out.println(c1);

      System.out.println(td1);

     /*

      * boolean removeAll(Collection c)

      * 删除当前集合中与给定集合相同的元素

      * 删除后当前元素发生了变化则返回true

      */

  }

}


4


import java.util.ArrayList;

import java.util.Collection;

import java.util.Iterator;

 

public class Demo8 {

public static void main(String[] args) {

/* 泛型最常用的集合

 *  泛型用来约束集合中的元素类型

 *  遍历集合元素

 *  Iterator iterator()

 *  集合提供了该方法用来获取一个可以获取当前集合元素的迭代器

 *  Iterator是一个接口,定义了遍历集合的相关方法。不同的集合有不同的实现类

 *  使用迭代器:

 *   问 取 删:

 *   其中删除不是必须操作

 */

Collection<String> c=new ArrayList<String>();

c.add("one");

c.add("two");

c.add("three");

System.out.println(c);

Iterator<String> it=c.iterator();

while(it.hasNext())

{

String str=it.next();

System.out.println(str);

}

}

}

5

/*

 * 泛型

 * 泛型是 JDK1.5之后推出的一个新的特性

 * 泛型又叫做参数化类型,是将一个类的属性 方法的参数 方法的返回值的类型的定义交给了使用者

 * 使用方的实例化当前类是传入泛型的实际使用类型

 * 泛型的原型是Object只是编译器在对泛型进行了相关的操作 会检查传入的实参类型是否与泛型类型

 * 一致

 * 返回一个泛型是会自动进行类型转换而已。

 *

 *

 */

public class Point<T> {

 

public Point(T x, T y) {

super();

this.x = x;

this.y = y;

}

private T x;

private T y;

 

public T getX() {

return x;

}

public void setX(T x) {

this.x = x;

}

public T getY() {

return y;

}

public void setY(T y) {

this.y = y;

}

public String toString(){

return "("+x+","+y+")";

}

}

/*

 * 泛型

 */

public class TextPoint2 {

public static void main(String[] args) {

Point<Integer> p1=new Point<Integer>(1,2);

p1.setX(2);

int x1=p1.getX();

System.out.println(x1);

System.out.println(p1);

Point p2=p1;

p2.setX("");

String x2=(String)p2.getX();

System.out.println(x2);

System.out.println(p2);

}

}

 

你可能感兴趣的:(java,集合类)