集合框架

来源:互联网 发布:个人备案域名 编辑:程序博客网 时间:2024/05/12 02:29

Set:代表无序,不可重复的集合;

List:代表有序,可以重复的集合;

Map:代表具有映射关系的集合;

Queue:代表队列的集合实现;

conCurrent:多线程支持的集合;

数组:数组长度一旦固定则不能变化;


数组和集合的区别:

数组:数组元素既可以是基本类型,也可以是对象;

集合:只能是对象(其实是对象的引用,但常认为就是对象);


集合类主要由Collection和Map两个接口派生而来;


Collection接口:

1.是List,Set,Queue的父接口

2.举例说明:

package com;

import java.util.ArrayList;
import java.util.Collection;
import java.util.HashSet;
import java.util.Iterator;

public class CollectionOper {
 public static void main(String[] args) {
  Collection<String> list = new ArrayList<>();
  list.add("Hello");
  list.add("World");

  System.out.println("list的大小:" + list.size());
  System.out.println(list.contains("Hello") ? "包含Hello" : "不包含Hello");
  
  list.add("关于list的学习") ;
  list.add("Hello") ;
  System.out.println("list中的集合元素:" + list);
  
  System.out.println("通过迭代的方法访问list集合中的元素");
  System.out.println("--------------------------------");
  list.forEach(object->System.out.println(object));
  System.out.println("--------------------------------");
  
  Collection<String> set = new HashSet<>() ;
  set.addAll(list) ;
  //根据显示的值可以看出Set集合会自动排序,并将重复的值合并
  System.out.println("set中的元素:" + set);
  
  System.out.println(list.containsAll(set)?"list包含set":"list不包含set");
  //清除set中的集合元素
  set.clear();
  System.out.println("set中的元素:" + set);
  
  System.out.println("通过iterator的方法访问list集合中的元素");

// 通过iterator的forEachRemaining方法可以取代最下面的迭代方法

iterator.forEachRemaining(object -> System.out.println(object));

//
  Iterator<String> iterator = list.iterator() ;
  while(iterator.hasNext()){
   String delValue = iterator.next() ;
   System.out.println(delValue);
   if (delValue.equals("Hello")){
    iterator.remove();
   }
  }
  System.out.println("删除后list中的集合元素:" + list);
 }

}


Iterator:用于遍历集合中的元素
1.hasNext():是否还有下一个元素
2.next():下一个元素的值
3.remove():删除元素
4.forEachRemaining():使用lambda表达式来遍历元素



0 0
原创粉丝点击