0
点赞
收藏
分享

微信扫一扫

scala中的for


scala中的for

  • ​​1.for循环怎么写​​
  • ​​2.for守卫​​
  • ​​3.嵌套for​​
  • ​​4.for返回值​​
  • ​​5.for循环条件太多​​
  • ​​6.switch与match​​


git地址


​​ https://github.com/a18792721831/studyScala.git ​​

1.for循环怎么写

在scala中for循环是如何写的?

scala中的for_scala for循环条件太多


执行结果如下

scala中的for_scala switch实现_02


第二种写法依然有其他的方式实现

scala中的for_scala for循环守卫_03


在for循环中,to包含截至范围,untail不包含截至范围。

2.for守卫

在for循环中,我们经常需要在for循环中进行判断,只有符合要求,符合条件的值,我们才会进行操作。

所以,在scala中提出了for的守卫

for守卫类似如下的写法

scala中的for_scala switch实现_04


这样的写法就是说,在1~6中,只有偶数才会输出。

上述写法等价于

scala中的for_scala for循环守卫_05

3.嵌套for

有时候,一个for并不能满足我们的要求,需要写多重的for循环才能满足要求。

那么,for循环嵌套如何进行实现呢?

scala中的for_scala for循环_06


这样就输出了18行

scala中的for_scala for循环守卫_07


当然,嵌套for循环和for守卫可以结合使用。

4.for返回值

有时候,我们需要在for循环中过滤一些数据,以便得到我们需要的值

所以,在for循环中可以使用yield进行返回(ps,jdk新特性就是借鉴这里的)

scala中的for_scala for循环守卫_08


这个输出

scala中的for_scala switch实现_09

5.for循环条件太多

因为for循环支持比较多的写法,所以有时候,for循环里面的条件就比较多,比较乱。

为了解决这个问题,for循环条件可以用花括弧包起来,像写代码块一样进行写。

scala中的for_scala for循环_10

6.switch与match

在scala中没有switch的,为了实现这一类的需求,有了scala中的模式匹配。

当然,模式匹配也是一部分非常大的内容,所以这里只考虑用模式匹配实现java中的switch。

当然,在scala中可能有更好的选择。

scala中的for_scala for循环的写法_11


输出如下:

scala中的for_scala for循环的写法_12


举报

相关推荐

0 条评论