Java 中的循环方式?

2023-12-13 10:57:14

大家好,我是香香。

我们平时编码的时候,不可避免的要用到循环,但是循环方式又有很多种;

  • 我们应该使用哪种呢?

  • 它们之间的区别又是什么?

  • 各自有什么优点缺点呢?

Java 中的循环方式:

在 Java 编程中,循环是一种常见的控制结构,用于重复执行一段代码块。Java 提供了多种循环方式,每种方式都有其独特的特点和适用场景。

  1. for 循环

for 循环是一种最常用的循环结构,被广泛应用于迭代固定次数的情况下。

它具有以下特点:

  • 初始化、条件判断和更新操作在同一行内,简洁明了。

  • 可以灵活控制循环次数,适用于已知循环次数的情况。

  • 在循环体内可以对循环变量进行操作和控制。

以下是 for 循环的示例代码:

for?(int?i?=?0;?i?<?10;?i++)?{
????System.out.println("当前循环次数:"?+?i);
}
  1. while 循环

while 循环是在指定条件为真时重复执行一段代码块,直到条件不满足为止。

它具有以下特点:

  • 先判断条件再执行循环体,可能一次都不执行循环体。

  • 循环次数不确定,适用于不确定循环次数的情况。

  • 在循环体内需要手动控制循环条件,否则可能会造成死循环。

以下是 while 循环的示例代码:

int?i?=?0;
while?(i?<?10)?{
????System.out.println("当前循环次数:"?+?i);
????i++;
}
  1. do-while 循环

do-while 循环先执行一次循环体,再检查条件是否满足,如果满足则继续执行循环。

它具有以下特点:

  • 至少执行一次循环体,无论条件是否满足。

  • 循环次数不确定,适用于至少执行一次循环体的情况。

  • 在循环体内需要手动控制循环条件,否则可能会造成死循环。

以下是 do-while 循环的示例代码:

int?i?=?0;
do?{
????System.out.println("当前循环次数:"?+?i);
????i++;
}?while?(i?<?10);
  1. 增强 for 循环(foreach 循环)

增强 for 循环是用于遍历数组或集合中的元素,简化了传统 for 循环的写法。

它具有以下特点:

  • 自动迭代集合或数组中的每个元素,无需手动控制索引。

  • 适用于需要遍历集合或数组中的所有元素的情况。

  • 不支持对集合或数组进行修改操作。

以下是增强 for 循环的示例代码:

List<String>?list?=?Arrays.asList("A",?"B",?"C");
for?(String?element?:?list)?{
????System.out.println("当前元素:"?+?element);
}
  1. Iterator 迭代器循环

Iterator 迭代器循环通过 Iterator 迭代器对象遍历集合中的元素,适用于对集合进行遍历和删除操作。

它具有以下特点:

  • 支持遍历集合并在遍历过程中删除元素。

  • 可以手动控制遍历索引,支持对集合进行修改操作。

  • 适用于需要删除集合中特定元素的情况。

以下是 Iterator 迭代器循环的示例代码:

List<String>?list?=?new?ArrayList<>();
list.add("A");
list.add("B");
list.add("C");
Iterator<String>?iterator?=?list.iterator();
while?(iterator.hasNext())?{
????String?element?=?iterator.next();
????System.out.println("当前元素:"?+?element);
????if?(element.equals("B"))?{
????????iterator.remove();
????}
}
  1. foreach 循环(Stream API)

foreach 循环是 Java 8 中新增的一种 for-each 风格的遍历集合方式,基于 Stream 操作序列化集合。

它具有以下特点:

  • 提供了更加简洁、函数式的遍历语法。

  • 可以结合Lambda表达式进行元素处理,增强了代码的可读性和灵活性。

  • 适用于对集合进行筛选、映射、排序等操作。

以下是 foreach 循环的示例代码:

List<String>?list?=?Arrays.asList("A",?"B",?"C");
list.forEach(element?->?System.out.println("当前元素:"?+?element));

总结

介绍了 Java 中常见的循环方式,包括 for 循环、while 循环、do-while 循环、增强 for 循环、Iterator 迭代器循环和 foreach 循环。

以下是每种循环方式的优点和缺点:

  1. for 循环

优点:

  • 可以灵活控制循环次数。

  • 在循环体内可以对循环变量进行操作和控制。

缺点:

  • 当循环次数不确定时,不够直观。

  1. while 循环

优点:

  • 循环次数不确定,适用于不确定循环次数的情况。

缺点:

  • 先判断条件再执行循环体,可能一次都不执行循环体。

  • 需要手动控制循环条件,否则可能会造成死循环。

  1. do-while 循环

优点:

  • 至少执行一次循环体,适用于至少执行一次循环体的情况。

缺点:

  • 需要手动控制循环条件,否则可能会造成死循环。

  1. 增强 for 循环(foreach 循环)

优点:

  • 自动迭代集合或数组中的每个元素,无需手动控制索引。

  • 适用于需要遍历集合或数组中的所有元素的情况。

缺点:

  • 不支持对集合或数组进行修改操作。

  1. Iterator 迭代器循环

优点:

  • 支持遍历集合并在遍历过程中删除元素。

  • 可以手动控制遍历索引,支持对集合进行修改操作。

缺点:

  • 需要显式地使用 Iterator 对象,代码稍微繁琐。

  1. foreach 循环(Stream API)

优点:

  • 提供了更加简洁、函数式的遍历语法。

  • 可以结合Lambda表达式进行元素处理,增强了代码的可读性和灵活性。

缺点:

  • 对于复杂的操作,可能不如传统的 for 循环灵活。

文章来源:https://blog.csdn.net/weixin_51109279/article/details/134902296
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。