Java集合类概述

1Collection接口

通常遍历集合,都是通过迭代器(Iterator)实现。注意:Iteratornext()方法返回的是Object

Collection接口常用的方法:

add(E e):将指定的对象添加到集合中。

remove(Object o):将指定对象从集合中删除。

isEmpty():返回boolean值,判断当前集合是否为空。

iterator():返回在此Collection的元素上进行迭代的迭代器。用于遍历集合中的对象。

size():返回int型值,获取该集合中元素的个数。

示例代码:

package test;
import java.util.*;
public class hello {
	public static void main(String[] args) {
        Collection<String> list = new ArrayList<>();
        list.add("a");
        list.add("b");
        list.add("c");
        list.add("d");
		Iterator<String> it = list.iterator();
		while(it.hasNext()){
			String str = (String)it.next();
			System.out.println(str);
		}
	}
}

运行结果:

a
b
c
d


2List集合

List接口继承Collection接口,此外还定义了一下两个非常重要的方法:

get(int index):获取指定索引位置的元素

set(int index,Object obj):将集合中指定索引位置的对象修改为指定对象

常用实现类:ArrayListLinkedList.

使用List集合时通常声明为List类型,可通过不同的实现类来实例化集合。

List<E> list = new ArrayList<>();

List<E> list = new LinkedList<>();

注:E为合法的java数据类型。

示例代码:

package test;
import java.util.*;
public class hello {
	public static void main(String[] args) {
        List<String> list = new ArrayList<>();
        list.add("a");
        list.add("b");
        list.add("c");
        int i = (int)(Math.random()*(list.size()-1));
        System.out.println("随机获取的数组元素:"+list.get(i));
        list.remove(2);
        System.out.println("将索引2的元素移除后,剩余数组元素是:");
 		for (int j = 0; j < list.size(); j++) {
			System.out.println(list.get(j));
		} 
        
        /* 第二种方法:创建一个迭代器进行显示
        Iterator<String> it = list.iterator(); 
        while(it.hasNext()){
        	String str = (String)it.next();
        	System.out.println(str);
        }  
        */ 
	}
}

运行结果:

随机获取的数组元素:b
将索引2的元素移除后,剩余数组元素是:
a
b


3Set集合

Set集合中对象不按特定的顺序进行排列,但不能包含重复对象!

继承Collection接口,实现的类有:HashSetTreeSet

新增的方法:

first():返回第一个元素(最低)。

last():返回最后一个元素(最高)。

comparator():返回元素进行排序的比较器。如果set采用自然排序则返回NULL

headSet(E toElement):返回一个新的Set集合,新集合包含toElement(不包含)之前的所有对象。

subSet(E toElement,E toElement):返回一个新的Set集合,包含fromElement(包含)对象与toElement(不包含)之间所有的对象。

tailSet(E fromElemnt):返回一个新的Set集合,新集合包含对象fromElement(包含)滞后的所有对象。

技巧:如果指定参数位于新集合的起始位置,则包含该对象,如果是终止位置,不包含该对象。

 

4Map集合

Map集合没有继承Collection接口,其提供的是keyvalue的映射。Map中不能包含相同的key,每个key只能映射一个value

Map集合中允许对象是NULL,而没有个数限制。

常用的方法:

put(K key,V value):向集合中添加keyvalue的映射关系。

containsKey(Object key):如果此映射包含key的映射关系,则返回true.

containsValue(Object value):如果此映射将一个或多个key映射到指定值,则返回true.

get(Object key):如果存在指定的key,则返回该值,否则返回NULL

keySet():返回该集合中所有key对象形成的Set集合。

values():返回该集合中所有value对象所形成的Collection集合。

 

示例代码:

package test;
import java.util.*;
public class hello {
	public static void main(String[] args) {
		Map<String,String> map = new HashMap<>();
		map.put("01","李同学");
		map.put("02","张同学");
		map.put("03","王同学");
		
		Set<String> set = map.keySet();     //获取key的Set集合
		Iterator<String> it = set.iterator();
		while(it.hasNext()){
			System.out.println(it.next());
		}
		
		Collection<String> value = map.values();//获取value的Collection集合。
		it = value.iterator();
		while(it.hasNext()){
			System.out.println(it.next());
		}
	}
}
运行结果:

01
02
03
李同学
张同学
王同学

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值