目录
Java常规的循环
大家常用的Java的循环方式有哪些,欢迎大家讨论分享。Java中常用的循环主要有以下几种:
while循环:这是最基本的循环结构,它会先检查给定的布尔表达式是否为真,如果为真,则执行循环体。这个过程会一直重复,直到布尔表达式的值变为假。
//迭代器结合while打印
Iterator<String> iterator = list.iterator();
while (iterator.hasNext()){
System.out.println(iterator.next());
}
do…while循环:这种循环至少会执行一次循环体,然后再判断条件是否满足,如果满足则继续执行,不满足则退出循环。
do {
// 执行的代码块
} while (循环条件);
for循环:这是最常用的循环类型之一,它提供了初始化、循环条件和循环迭代器的三个部分。在每次循环开始前都会检查循环条件,如果条件为真则执行循环体,否则退出循环。
for (初始化部分; 循环条件; 迭代部分) {
// 执行的代码块
}
Java中通过Stream流去循环
1、介绍
2、使用步骤
注意:双列集合无法直接使用Stream流,需要将其转化为单列集合再进操作
可以用 Collections.addAll()快速向集合中添加元素
// 创建一个List
List<String> list = new ArrayList<>();
Collections.addAll(list, "元素a", "元素b", "元素c");
// 添加元素到List
list.add("元素1");
list.add("元素2");
list.add("元素3");
// 打印List中的所有元素
list.stream()
.forEach(System.out::println);
3、中间的常用操作方法
综上,Stream流和普通循环的区别
- 编程范式:普通循环(如for循环)是命令式编程的体现,需要明确指定迭代的每一步操作。而Stream流是函数式编程的一种体现,允许以声明式的方式处理数据集合,通过将操作链式组合起来对数据进行处理,使得代码更加简洁。
- 性能:在性能方面,普通for循环通常提供更高的执行效率,因为它直接操作底层的数据结构。相比之下,Stream流操作可能会引入额外的开销,特别是当涉及到流的中间操作和终止操作时。
- 并行处理:Stream流提供了并行处理的能力,可以非常容易地通过
parallelStream()
方法来利用多核处理器的优势进行并行计算,而普通循环则通常需要手动实现线程管理和同步。
总的来说,Stream流提供了一种更高级、更声明式的数据处理方式,适用于需要复杂数据处理、并行化以及提高代码可读性的场景。而普通循环则在简单任务或对性能要求极高的场景下更为直接和高效。在实际开发中,选择使用哪种方式应根据具体需求和上下文来决定。