JAVA中几种常见集合的使用实例

系统 1635 0

Java.util.ArrayList(类):

 

import  java.awt. * ;
import  java.util. * ;
public   class  CollectionTest
{ // List是一个能包含重复元素的已排序的Collection,有时list也称为序列,List第一个元素的下标为0 
      public  String colors[] = { " red " , " white " , " blue " } ; // 定义一个字符数组

     
// 构造函数
      public  CollectionTest()
     
{
          ArrayList list
= new  ArrayList(); // 实例化一个ArrayList
          list.add(Color.magenta); // 向里面添加一个元素,这里是颜色
          
          
for ( int  count = 0 ;count < colors.length;count ++ )
              list.add(colors[count]);
// 加入开始声明的数组中的元素
          
          list.add(Color.cyan);     
// 颜色  导入awt包
          System.out.println( " \nArrayList " );
          
for ( int  count = 0 ;count < list.size();count ++ )
             System.out.println(list.get(count)
+ "   " ); // 从arrayList中读取 元素
          
          removeString(list);
          System.out.println(
" \n\nArrayList after calling " + " removeString: " );
          
for ( int  count = 0 ;count < list.size();count ++ )
                 System.out.println(list.get(count)
+ "   " );
     }

     
     
        
public   void  removeString(Collection collection)
        
{
             Iterator itrator
= collection.iterator();     // 声明一个迭代
             
// 调用itrator的hasNext方法判断Collection是否还包含元素
              while (itrator.hasNext())
             
{
                  
// 调用itrator的next方法获得下一个元素的引用
                   if ( itrator.next()  instanceof  String )  //  instanceof 判断是否是String 的实例
                        itrator.remove();     // 如果是的 则删除
             }

        }

     
     
public    static   void  main(String[] args)
     
{
          
new  CollectionTest();
     }

     
}



该例示范了ArrayList的使用 先声明了一String类型的数组,里面存储了“颜色”,是用字符串写出的颜色,将这个字符串数组存入ArrayList实例,同时还存入了awt包内的颜色实例,全部存入后利用迭代,删除不符要求的假数据,也就是我们用字符串写的颜色,也用到了 instanceof 它是一个二元操作符,类似于equals用于判断instanceof左边 的对象 是否是 右边对象的实例,若是 返回真,这里就可以判断 ArrayList里面的真假颜色,假颜色是 字符串的 实例,所以我们通过迭代 一个个对比。只要是String的实例就将其从数组中删除,所以最后 ArrayList里面仅仅剩下二个元素,运行效果如下:
JAVA中几种常见集合的使用实例

  java.util.HashSet(类);


JAVA中几种常见集合的使用实例
可以看到重复元素 orange除去了

java.util.Set(接口)

import  java.util.HashSet;
import  java.util.Iterator;
import  java.util.Set;

class  TestSet 
{    
     
public   static   void  main(String args[])
     
{
         Set set 
=   new  HashSet();
         set.add(
" aaa " );
         set.add(
" bbb " );
         set.add(
" aaa " ); // 后面加入的重复性元素均无效
         set.add( " bbb " );
         set.add(
" aaa " );
         set.add(
" bbb " );
         set.add(
" aaa " );
         set.add(
" bbb " );
         set.add(
" aaa " );
         set.add(
" bbb " );
         Iterator ite
= set.iterator();
         System.out.println(set.size());
// the result is 2
          while (ite.hasNext())
         
{
             System.out.println(
" ---- " + ite.next());
          }

     }

}


JAVA中几种常见集合的使用实例
我们看到效果

java.util.List(接口)

package  tt;

import  java.util.Arrays;
import  java.util.Collections;
import  java.util.Iterator;
import  java.util.LinkedList;
import  java.util.List;

public   class  ListTest  {

    
public   static   void  baseUse() {
            
// 链表实现
            List list  =   new  LinkedList();
            
// 数组实现
            
// List list = new ArrayList();
            list.add( " a " ); // 向列表的尾部追加"a"
            System.out.println( " 使用list接口的add()一个参数的方法: " + list);
            list.add(
0 , " b " ); // 在指定位置插入"b"
            System.out.println( " 使用list接口的add二个参数的方法: " + list);
            list.remove(
" a " ); // 移除列表中"a"
            System.out.println( " 使用list接口的remove()方法删除a: " + list);
     }
    
      
public   static   void  useSort() {
            String[] strArray 
=   new  String[]  { " z " " a " " c " , " C " } ;
            List list 
=  Arrays.asList(strArray);
            System.out.println(list);
            Collections.sort(list);
// 根据元素自然顺序排序
            System.out.println( " 自然顺序: " + list);
            Collections.sort(list, String.CASE_INSENSITIVE_ORDER);
// 根据指定的字母方式排序    
            System.out.println( " 指定字母方式: " + list);
            Collections.sort(list, Collections.reverseOrder());
// 根据反转自然顺序方式排序
            System.out.println( " 反转自然顺序: " + list);
            Collections.sort(list, String.CASE_INSENSITIVE_ORDER);
            System.out.println(list);
            Collections.reverse(list);
// 反转列表排序
            System.out.println(list);
      }

           
    
public   static   void  main(String[] args)  {
    
        baseUse();
    
//     useSort();
    }


}


运行
JAVA中几种常见集合的使用实例  

java.util.TreeSet(类)

package  tt;

import  java.util.Iterator;
import  java.util.TreeSet;

public   class  TreeSetTest  {
    
     
public   static   void  main(String args[]) {
          TreeSet a 
=   new  TreeSet();
          a.add(
" 1167014513046,hondanna_mousepress " );
          a.add(
" 1167014512046,hondanna_mousepress_usefull " );
          a.add(
" 1167014511046,hondanna_mousepress_num " );
          a.add(
" 1167014515437,hondanna_mousepress " );
          a.add(
" 1167014514438,hondanna_mousepress_usefull " );
         Iterator iterator 
=  a.iterator();
         
while (iterator.hasNext())
             System.out.println(iterator.next());
         }

}

运行结果:
JAVA中几种常见集合的使用实例
TreeSet为使用树来进行存储的Set接口提供了一个工具,对象按升序存储,访问和存储是很快的,在存储了大量的需要进行快速检索的排序信息的情况下,TreeSet是一个很好的选择
构造函数定义为:
TreeSet()-构造一个空的树集合,该树集合将根据其元素的自然顺序按升序排序。
TreeSet(Collection c)-构造了一个包含了c的元素的树的集合。
TreeSet(Comparator comp)-构造了一个空的树的集合,它按照由comp指定的比较函数进行排序。
TreeSet(SortedSet ss)-构造了一个包含ss的元素的树集合。

// Set是包含独一无二元素的Collection,HashSet把它的元素存储在哈希表中,而TreeSet把它的元素存储在树中
import  java.util. * ;

public   class  SetTest
{
     
private  String colors[] = { " orange " , " tan " , " orange " , " white " ,   " gray " } ;
     
public  SetTest()
     
{
              ArrayList list;
  

JAVA中几种常见集合的使用实例


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论