如何减少使用你代码的for循环

减少使用你代码你的for循环

                                   **首先,你需要for循环做什么?**

1.遍历集合
2.运行算法
对于算法,for循环可能是合适的。看下列算法,检查数字是否为5的幂:

Integer number = 91;
for(;number>1;number/=5)
return number == 1;

在这里,for循环是合适的。这是一个非常简单的示例。但是对于大多数开发人员而言,在他们的日常工作中,遇到的情况大多比较复杂,大多数时候,单纯的for遍历循环已经不适合。下面我们来看一些代码的示例。

                                  **遍历Java中的集合**

我们先来定义一个简单的集合,并往里面添加元素:

List<String> language = new ArrayList<>();
language.add("java");
language.add("c++");
language.add("c#");
language.add("Python");
language.add("PHP");
language.add("javascript");

有很多方法可以对这个集合进行遍历,运行算法。我们先从最古老的迭代器开始:

Iterator<String> iterator = language.iterator;
while(iterator.hasNext()){
System.out.println(iterator.next());
}

Iterator接口中定义了三个方法:

boolean hasNext();
E next();
void remove();

这种代码使Java在冗长性上享有声誉。
这次使用经典的索引for循环:

for(int i=0;i<language.size();i++){
System.out.println(language.get(i));
}

这种结构非常熟悉并且易于遵循,以至于大多数人不会考虑更好的东西。但是在Java 8以后我们可以使用forEach函数来进行简化。
借助Java 8,我们可以使用forEach函数:

language.forEach(item -> System.out.println(item));

我们可以进一步简化它,在我们只是迭代数组时,这样会使得代码很简洁:

language.forEach(System.out::println):
                              **如何使用Java Streams?**

一旦停止在Java中编写如此多的for循环,forEach就成了你的第二选择,那么你应该看看Java中的Stream。
例如,使用类似的语法,你可以轻松选择是有以“J”开头的编程语言:

language.stream().filtrer(item -> item.startsWith("J"))
		.forEach(System.out::println);
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

真的很皮

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

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

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

打赏作者

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

抵扣说明:

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

余额充值