- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验十 集合编程
【开发语言及实现平台或实验环境】
Windows2000 或XP,JDK1.6与Eclipse
【实验目的】
1.掌握List、Collection、Set、Map、HashTable等常用数据结构的使用
2.进一步熟悉基于接口编程的特点
3. 掌握迭代器的用法
【实验要求】
1. 掌握List、Collection、Set、Map、HashTable等常用数据结构的使用。
2. 掌握迭代器编程
【实验内容】
1 Collection接口定义了存取一组对象的方法,其子接口Set 和List分别定义了存储方式: Set中的数据对象没有顺序且不可以重复。List中的数据对象有顺序且可以重复。Map接口定义料存取“键(key)—值(value)映射对”的方法。
2 Collection接口提供的方法:
3 Set 接口提供的方法与Collection接口中的方法一样,没有添加新的方法,只是Set容器中装的元素无顺序和不可重复,例1
import java.util.HashSet;
import java.util.Set;
public class TestSet {
public static void main(String[] args) {
Set s1 = new HashSet();
Set s2 = new HashSet();
s1.add(a);
s1.add(b);
s1.add(c);
s2.add(a);
s2.add(b);
s2.add(d);
Set sn = new HashSet(s1);
sn.retainAll(s2);
Set su = new HashSet(s1);
su.addAll(s2);
System.out.println(sn);
System.out.println(su);
}
}
4 List接口提供的方法除Collection接口中的方法外,还添加了一些新的方法。
在java.util.Collections提供了一些对于List常用的算法,这些方法都是静态的,例2
import java.util.Collections;
import java.util.LinkedList;
import java.util.List;
public class TestList {
public static void main(String[] args){
List l1 = new LinkedList();
List l2 = new LinkedList();
for(int i=0;i10;i++){
l1.add(a + i);
}
System.out.println(l1);
Collections.shuffle(l1);
System.out.println(l1);
Collections.reverse(l1);
System.out.println(l1);
Collections.sort(l1);
System.out.println(l1);
System.out.println(Collections.binarySearch(l1, a5));
}
}
4. Map集合把键值映射到某个值。一个键值最多只能映射一个值。 Key value
public void clear(): 清空整个数据集合;
public V get(K key):根据关键字得到对应值;
public V put(K key,V value v):加入新的“关键字-值”;
public V remove(Object key):删除Map中关键字所对应的映射关系;
public boolean equals(Object obj): 判断Map对象与参数对象是否等价,两个Map相等,当且仅当其entrySet()得到的集合是一致的。
public boolean containsKey(Object?key):判断在Map中是否存在与关键字匹配的映射关系。
public boolean containsValues(Object?value):判断在Map中是否存在与键值匹配的映射关系。
Map中实际上包括了关键字、值以及它们的映射关系的集合,可分别使用如下方法得到:
public SetK keySet():关键字的集合。
public CollectionV values():值的集合。
public SetMap.EntryK,V entrySet():关键字和值的映射关系
文档评论(0)