如何遍历一个集合

如何遍历一个集合?

遍历一个集合的方法取决于集合的类型。在Java中,常见的集合类型有List、Set和Map等。以下是几种常见的遍历方法:

  1. 对于List(例如ArrayList)

使用for-each循环:

List<String> list = new ArrayList<>();
// 添加元素到list
for (String item : list) {
    System.out.println(item);
}

使用迭代器(Iterator):

List<String> list = new ArrayList<>();
// 添加元素到list
Iterator<String> iterator = list.iterator();
while (iterator.hasNext()) {
    System.out.println(iterator.next());
}
  1. 对于Set(例如HashSet)

使用for-each循环:

Set<String> set = new HashSet<>();
// 添加元素到set
for (String item : set) {
    System.out.println(item);
}

由于Set的元素无序,因此使用迭代器的方法和List类似,但遍历的结果可能没有固定的顺序。
3. 对于Map(例如HashMap)

遍历Map的键(key):

Map<String, String> map = new HashMap<>();
// 添加键值对到map
for (String key : map.keySet()) {
    System.out.println(key);
}

遍历Map的值(value):

Map<String, String> map = new HashMap<>();
// 添加键值对到map
for (String value : map.values()) {
    System.out.println(value);
}

遍历Map的键值对:

Map<String, String> map = new HashMap<>();
// 添加键值对到map
for (Map.Entry<String, String> entry : map.entrySet()) {
    System.out.println("Key: " + entry.getKey() + ", Value: " + entry.getValue());
}

ArrayList的扩容机制是怎样的?

ArrayList的扩容机制是在当前容量不足以存储新元素时自动进行扩容。具体来说,当需要添加一个新元素到ArrayList中时,首先会检查当前元素个数是否已经达到了数组的容量上限。如果已经达到容量上限,就会进行扩容操作。扩容操作会创建一个新的数组,其大小通常是当前容量的1.5倍(具体增长因子可能会根据实现有所不同)。然后,会将原数组中的元素复制到新数组中。最后,新旧列表的size大小相同,但elementData的长度即容量不同。

值得注意的是,ArrayList的扩容机制是有一定开销的,因此在预知需要存储大量元素时,最好在创建ArrayList时就指定初始容量,以减少扩容次数,提高性能。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不安分的猿人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值