Lab2中遇到的困难及相关知识

Lab2中遇到的困难及相关知识

目录

1 对一些对象类型的不熟悉 1

1.1 Queue 1

1.2 Set 1

1.3 List 2

1.4 Map 2

2 循环遍历 2

2.1 普通for循环 3

2.2 加强for循环 3

2.3 迭代器Iterator 3

总结 3

1 对一些对象类型的不熟悉

1.1 Queue

队列是一种特殊的线性表,它只允许在表的前端进行删除操作,而在表的后端进行插入操作,有先进先出的特点。

其常用方法如下:

  1. add():将指定的元素插入此队列(如果立即可行且不会违反容量限制),在成功时返回
    true,如果当前没有可用的空间,则抛出 IllegalStateException。

  2. element():获取,但是不移除此队列的头。

  3. offer():将指定的元素插入此队列(如果立即可行且不会违反容量制),当使用有容量限制的队列时,此方法通常要优于
    add(E),后者可能无法插入元素,而只是抛出一个异常。

  4. peek():获取但不移除此队列的头;如果此队列为空,则返回 null。

  5. poll():获取并移除此队列的头,如果此队列为空,则返回 null

  6. remove():获取并移除此队列的头。

1.2 Set

Set继承于Collection接口,是一个不允许出现重复元素,并且无序的集合。

其常用方法如下:

  1. add( ): 向集合中添加元素

  2. clear( ):去掉集合中所有的元素

  3. contains( ):判断集合中是否包含某一个元素

  4. isEmpty( ):判断集合是否为空

  5. remove( ):从集合中去掉特定的对象

  6. size( ):返回集合的大小

1.3 List

List
是一个接口,它继承于Collection的接口。它代表着有序的队列。当我们讨论List的时候,一般都和Set作比较。

List中元素可以重复,并且是有序的(这里的有序指的是按照放入的顺序进行存储。如按照顺序把1,2,3存入List,那么,从List中遍历出来的顺序也是1,2,3)。而Set中的元素不可以重复,并且是无序的(从set中遍历出来的数据和放入顺序没有关系)。

List的常用方法:

  1. add( ): 向List的指定位置插入元素

  2. get():返回list中指定位置的元素

  3. set():修改List中的某一指定位置的元素

  4. isEmpty( ):判断List是否为空

  5. remove( ):从List中去掉特定的对象

  6. size( ):返回List的大小

1.4 Map

Map是将键映射到值的对象的数据结构,一个映射不能包含重复的键,且每个键最多只能映射到一个值。

Map的常用方法:

  1. put():添加映射对

  2. get():根据键来获取其映射的值

  3. containsKey():判断Map中是否有指定键值

  4. containsValue():判断Map中是否有指定的值

  5. remove():从Map中去掉特定的对象

  6. keySet():获得键的集合

  7. values():获得值的集合

  8. isEmpty():判断Map是否为空

  9. entrySet():返回Map中的元素对

2 循环遍历

循环遍历中的加强for循环以及迭代器遍历是我之前没有用的循环遍历方式。

2.1 普通for循环

类似于for (int i = 0;i < n;i++)的循环遍历;

2.2 加强for循环

类似于for (String str : list)的循环遍历;

值得注意的是,在加强for循环的过程中,只能观察被遍历的元素的值,并不能对其进行删除等操作,否则会发生意料之外的事情。

2.3 迭代器Iterator

例如如下程序:

Iterator<String> it = list.iterator();

while(it.hasNext()){

String x = it.next();

if(x.equals(“del”)){

it.remove();

}

}

总结

本章回顾了我在做Lab2时遇到的两个主要的困难以及与它们相关的知识。

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值