方法slidingon 集合以以下形式返回给定大小的滑动窗口X[Iterable[A]]
X 是集合的类型,A 是元素类型。通常我需要两个或三个元素,并且我更喜欢给它们命名。一种丑陋的解决方法sliding(2)
如下:
points.sliding(2).foreach{ twoPoints =>
val (p1,p2) = (twoPoints.head,twoPoints.last)
//do something
}
这很糟糕并且只适用于两个元素。另请注意
(a,b) = (twoPoints(0),twoPoints(1))
不起作用。
我做了很多这样的事this https://stackoverflow.com/questions/4656706/how-to-find-same-value-rectangular-areas-of-a-given-size-in-a-matrix-most-efficie/4697998#4697998上周刚刚回答。
points.sliding(2).foreach { case X(p1, p2) => ... }
If points
is an Array
,然后替换X
with Array
。如果它是一个List
, 代替X
with List
, 等等。
请注意,您正在进行模式匹配,因此您需要{}
代替()
为参数。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)