您的位置:首页 > 编程语言 > Java开发

JAVA中集合框架一些常用类的总结

2010-12-05 12:17 666 查看
/**

*name:jinzhongwei

*JAVA中集合类一些常用类的总结

*/

package com.pengcheng.jin;

import java.util.*;

public class ArryText {

public static void main(String[] args) {

ArrayList list=new ArrayList();

/*list.add("金忠维");

list.add("金小刚");

list.add("杨万虎");

for(int i=0;i<list.size();i++){

System.out.println(list.get(i));

}*/

/**

* 如果要添加其他类对象的元素则必须在该类中重写toString();

*/

/* list.add(new Point(3,3));

list.add(new Point(4,4));

list.add(new Point(5,5));

for(Object elem:list){

System.out.println(elem.toString());

}*/

/**

* toArray()返回一个Object[]数组

* Arrays.aslist(Object[] abj)返回一个列表

* 如果返回一个列表就固定它的容量不能在对它进行修改

* 但可以改变列表元素中的值

*/

/* Object[] obj=list.toArray();

List al=Arrays.asList(obj);

System.out.println(al);*/

/**

* 迭代器的使用:

* hasNext()返回boolean判断集合中是否有元素

* next()返回迭代的下一个元素

* remove()删除集合中迭代的元素,但必须在删除前让它指向要删除的元素

*/

/*Iterator it=list.iterator();

it.next();

it.remove();

while(it.hasNext()){

System.out.println(it.next());

}*/

Student s1=new Student(20,"金忠维");

Student s2=new Student(24,"金小刚");

Student s3=new Student(22,"杨万虎");

Student s4=new Student(24,"王小鹏");

Student s5=new Student(20,"富平");

list.add(s1);

list.add(s2);

list.add(s3);

list.add(s4);

list.add(s5);

Collections.sort(list, s1.new StudentComparto());

printElements(list);

}

/**

* 迭代器的作用

* 1;如果有的类中没有get(),则可以用Iterator代替

* 2:static printElements(Collection c)方法中有一个参数Collection

* 只要是直接或间接实现Collection接口的类都可以调用该方法来进行迭代遍历

*/

public static void printElements(Collection c){

Iterator it=c.iterator();

while(it.hasNext()){

System.out.println(it.next());

}

}

}

class Point{

int x,y;

public Point(int x,int y){

this.x=x;

this.y=y;

}

public String toString(){

return "x="+x+","+"y="+y;

}

}

/**

*

* 如果要使用Collections.sort()对集合或数组进行排序

* 则必须实现接口java.lang.Comparable中的public int compareTo(Object o)方法

* 如果要添加一个指定的比较器进行排序则必须实现java.util.Comparator<T>中的

* public int compare(Object o1, Object o2)方法

* 如果要往集合中添加对象元素就要重写toString()。

*/

class Student implements java.lang.Comparable{

private int age;

private String name;

public Student(int age,String name){

this.age=age;

this.name=name;

}

class StudentComparto implements java.util.Comparator

{

public int compare(Object o1, Object o2) {

Student s1=(Student)o1;

Student s2=(Student)o2;

int ruset=s1.age>s2.age ?1:(s1.age==s2.age ? 0:-1);

if(ruset==0){

ruset=s1.name.compareTo(s2.name);

}

return ruset;

}

}

public int compareTo(Object o) {

Student s=(Student)o;

if(age>s.age)

return 1;

else if(age==s.age)

return 0;

else return -1;

}

public String toString(){

return age+" "+name;

}

}

**************************

package com.pengcheng.jin;

/**

* 利用LinkedList实现的栈,队列

*/

import java.util.*;

public class LinkListText {

private static java.util.LinkedList list=new LinkedList();

//入栈

/*public void push(Object o){

list.addFirst(o);

}

//出栈

public Object pop(){

return list.removeFirst();

}

//查看栈顶元素

public Object peek(){

return list.getFirst();

}

//查看栈是否为空

public boolean Empty(){

return list.isEmpty();

}*/

public static void printEmplements(){

Iterator it=list.iterator();

while(it.hasNext())

{

System.out.println(it.next());

}

}

//入队

public void push(Object o){

list.addLast(o);

}

//出队

public Object pop()

{

return list.removeFirst();

}

//查看队头

public Object peek()

{

return list.getFirst();

}

public static void main(String[] args) {

LinkListText llt=new LinkListText();

/*llt.push(0);

llt.push(1);

llt.push(2);

llt.push(3);

llt.push(4);

llt.push(5);

llt.push(6);

llt.push(7);

llt.push(8);

llt.push(9);

printEmplements();

System.out.println(llt.peek());

System.out.println(llt.pop());

System.out.println(llt.pop());

System.out.println(llt.pop());

System.out.println(llt.Empty());*/

llt.push(1);

llt.push(2);

llt.push(3);

llt.push(4);

llt.push(5);

llt.push(6);

llt.push(7);

llt.push(8);

llt.push(9);

//printEmplements();

//System.out.println(llt.peek());

System.out.println(llt.pop());

System.out.println(llt.pop());

System.out.println(llt.pop());

//printEmplements();

}

}

****************************

package com.pengcheng.jin;

/

/**

* hashSet的使用:

* 如果要用哈希表存放数据就必须重写

* public int hashCode()

* public boolean equals(Object o),这两个方法

*/

import java.util.*;

public class HashText {

private static java.util.HashSet hs=new HashSet();

public static void printEmplements(){

Iterator it=hs.iterator();

while(it.hasNext())

{

System.out.println(it.next());

}

}

public static void main(String[] args) {

// hs.add(1);

// hs.add(2);

// hs.add(3);

// hs.add(1);

System.out.println(new Student1(20,"zhangsan"));

System.out.println(new Student1(19,"lisi"));

System.out.println(new Student1(25,"wangwu"));

System.out.println(new Student1(20,"zhangsan"));

//printEmplements();

}

}

class Student1{

本文出自 “Java互动技术领域” 博客,谢绝转载!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: