zuknow learn together

新しい教材を作成

Scalaコレクションメソッド

カード 168枚 作成者: Shunsuke Tadokoro (作成日: 2015/07/19)

  • コレクションの全要素を1回ずつ処理する。

解説面  クリックしてカードを裏返す

アプリをダウンロードして、このコンテンツを学習しよう! AppStore / Google Play

教材の説明:

ひしだま's ホームページ「Scalaコレクションメソッド」 (http://www.ne.jp/asahi/hishidama/home/tech/scala/collection/method.html) より

公開範囲:

公開

カテゴリ:

  • このエントリーをはてなブックマークに追加
  • 1

    コレクションの全要素を1回ずつ処理する。

    補足(例文と訳など)

    • List(1,2,3).foreach(n => println(n)) → 123

    答え

    • foreach

    解説

    関数fの引数はコレクションの要素。fの戻り値は無視される。

  • 2

    コレクションの要素を変換する。

    補足(例文と訳など)

    • List(1,2,3).map(n => n*2) → List(2, 4, 6)

    答え

    • map

    解説

    関数fでAを処理してBの値を返すことにより、Bのコレクションが作られる。 →filterとmapを同時に行いたいならcollect

  • 3

    mapの逆順。

    補足(例文と訳など)

    • List("a2","b1","c4", "d3").reverseMap(s => s(1)) → List(3, 4, 1, 2)

    答え

    • reverseMap

    解説

  • 4

    値を変換したMapを返す。

    補足(例文と訳など)

    • Map(1->2,3->4,5->6).mapValues(v => Symbol(v.toString)) → Map((1,'2), (3,'4), (5,'6))

    答え

    • mapValues

    解説

  • 5

    可変Mapの場合は自分の値を変換する。 不変Mapの場合は新しいMapを返す。

    補足(例文と訳など)

    • val m = Map(1->2,3->4,5->6)m.transform((k,v) => k+v) → Map((1,3), (3,7), (5,11))

    答え

    • transform

    解説

  • 6

    コレクションの要素を変換する。

    補足(例文と訳など)

    • List(0,1,2).flatMap(n => List(n,'A'+n)) → List(0, 65, 1, 66, 2, 67)

    答え

    • flatMap

    解説

    関数fでAを処理して複数のBを返すと、それらを結合した新しいコレクションが作られる。

  • 7

    filterとmapを合わせたようなもの。

    補足(例文と訳など)

    • List(1,2,3).collect{ case 1 => "one"; case 2 => "two" } → List(one, two)

    答え

    • collect

    解説

    caseにマッチした結果だけでコレクションが作られる。

  • 8

    caseにマッチした最初の値を返す。

    補足(例文と訳など)

    • List(1,2,3).collectFirst{ case 2 => "two" } → Some(two)

    答え

    • collectFirst

    解説

  • 9

    要素がTraversableのとき、それを外して平坦化する。

    補足(例文と訳など)

    • List(Set(1,2),Set(3,4),Set(5,6)).flatten → List(1, 2, 3, 4, 5, 6)

    答え

    • flatten

    解説

  • 10

    コレクションを組み替える?

    補足(例文と訳など)

    • List(Set(1,2,3),Set(4,5,6),Set(7,8,9)).transpose → List(List(1, 4, 7), List(2, 5, 8), List(3, 6, 9))

    答え

    • transpose

    解説

  • 11

    要素を分離し、2つのコレクションにして返す。

    補足(例文と訳など)

    • List((1,'a),(2,'b),(3,'c)).unzip → (List(1, 2, 3),List('a, 'b, 'c))

    答え

    • unzip

    解説

  • 12

    要素を分離し、3つのコレクションにして返す。

    補足(例文と訳など)

    • List((1,'a,"foo"),(2,'b,"bar"),(3,'c,"zzz")).unzip3 → (List(1, 2, 3),List('a, 'b, 'c),List(foo, bar, zzz))

    答え

    • unzip3

    解説

  • 13

    2つのコレクションの同じ位置の要素をペアにしたコレクションを返す。

    補足(例文と訳など)

    • List(1,2,3,4) zip List('a,'b,'c) → List((1,'a), (2,'b), (3,'c))

    答え

    • zip

    解説

    長さは短い方に合わせられる。

  • 14

    2つのコレクションの同じ位置の要素をペアにしたコレクションを返す。

    補足(例文と訳など)

    • List(1,2,3,4).zipAll( List('a,'b,'c), 0, 'z) → List((1,'a), (2,'b), (3,'c), (4,'z))

    答え

    • zipAll

    解説

    足りない要素は引数の値で補われる。

  • 15

    要素と位置(インデックス)をペアにしたコレクションを返す。

    補足(例文と訳など)

    • List('a,'b,'c).zipWithIndex → List(('a,0), ('b,1), ('c,2))

    答え

    • zipWithIndex

    解説

  • 16

    要素の位置(インデックス)のコレクションを返す。

    補足(例文と訳など)

    • List('a,'b,'c).indices → Range(0, 1, 2)

    答え

    • indices

    解説

  • 17

    ソートされたコレクションを返す。

    補足(例文と訳など)

    • List(2,1,4,3).sorted → List(1, 2, 3, 4)

    答え

    • sorted

    解説

  • 18

    関数ltで比較・ソートしたコレクションを返す。

    補足(例文と訳など)

    • List("a2","b1","c4", "d3").sortWith((s1,s2) => s1(1) < s2(1))List("a2","b1","c4", "d3").sortWith(_.charAt(1) < _.charAt(1))List("a2","b1","c4", "d3").sortWith(_.apply(1) < _.apply(1))List("a2","b1","c4", "d3").sortWith(_(1) < _(1)) → List(b1, a2, d3, c4)

    答え

    • sortWith

    解説

  • 19

    要素AをBに変換し、Bでソートされたコレクションを返す。

    補足(例文と訳など)

    • List("a2","b1","c4", "d3").sortBy(s => s(1)) → List(b1, a2, d3, c4)

    答え

    • sortBy

    解説

  • 20

    逆順に並べ替えたコレクションを返す。

    補足(例文と訳など)

    • List(2,1,4,3).reverse → List(3, 4, 1, 2)

    答え

    • reverse

    解説

  • 21

    指定された個数ずつの全ての組み合わせ(nCr)を返す。

    補足(例文と訳など)

    • List("a","b","c","d").combinations(2).foreach(println) → List(a, b)List(a, c)List(a, d)List(b, c)List(b, d)List(c, d)

    答え

    • combinations

    解説

  • 22

    全ての順列組み合わせ(nPn)を返す。

    補足(例文と訳など)

    • List("a","b","c").permutations.foreach(println) → List(a, b, c)List(a, c, b)List(b, a, c)List(b, c, a)List(c, a, b)List(c, b, a)

    答え

    • permutations

    解説

  • 23

    キーのIterableを返す。

    補足(例文と訳など)

    • Map(1->2,3->4,5->6).keys → Set(1, 3, 5)

    答え

    • keys

    解説

  • 24

    キーのSetを返す。

    補足(例文と訳など)

    • Map(1->2,3->4,5->6).keySet → Set(1, 3, 5)

    答え

    • keySet

    解説

  • 25

    値のIterableを返す。

    補足(例文と訳など)

    • Map(1->2,3->4,5->6).values → MapLike(2, 4, 6)

    答え

    • values

    解説

  • 26

    積集合(双方に存在する要素のコレクション)を返す。

    補足(例文と訳など)

    • List(1,2,3) intersect List(3,4,2) → List(2, 3)

    答え

    • intersect

    解説

  • 27

    和集合を返す。++と同じ。

    補足(例文と訳など)

    • List(1,2,3) union List(3,4) → List(1, 2, 3, 3, 4)

    答え

    • union

    解説

  • 28

    差集合を返す。

    補足(例文と訳など)

    • List(1,2,3) diff List(3,4) → List(1, 2)

    答え

    • diff

    解説

  • 29

    重複を排除したコレクションを返す。

    補足(例文と訳など)

    • List(1,2,3,2,1,4).distinct → List(1, 2, 3, 4)

    答え

    • distinct

    解説

  • 30

    積集合。intersectと同じ。

    補足(例文と訳など)

    • Set(1,2,3) & Set(3,4,2) → Set(2, 3)

    答え

    • &

    解説

  • 31

    和集合。unionと同じ。

    補足(例文と訳など)

    • Set(1,2,3) | Set(3,4) → Set(1, 2, 3, 4)

    答え

    • |

    解説

  • 32

    差集合。diffと同じ。

    補足(例文と訳など)

    • Set(1,2,3) &~ Set(3,4) → Set(1, 2)

    答え

    • &~

    解説

  • 33

    空のときtrue。

    補足(例文と訳など)

    答え

    • isEmpty

    解説

  • 34

    要素があるときtrue。

    補足(例文と訳など)

    答え

    • nonEmpty

    解説

  • 35

    位置nの要素があるときtrue。

    補足(例文と訳など)

    • List('a,'b,'c).isDefinedAt(1) → TRUE

    答え

    • isDefinedAt

    解説

  • 36

    キーが含まれるときtrue。

    補足(例文と訳など)

    • Map('a->11, 'b->22, 'c->33).isDefinedAt('b) → TRUE

    答え

    • isDefinedAt

    解説

  • 37

    最初に見つかった要素の位置を返す。 無い場合は-1が返る。

    補足(例文と訳など)

    • List('a,'b,'c,'b,'d).indexOf('b) → 1

    答え

    • indexOf

    解説

  • 38

    一番右で見つかった要素の位置を返す。

    補足(例文と訳など)

    • List('a,'b,'c,'b,'d).lastIndexOf('b) → 3

    答え

    • lastIndexOf

    解説

    無い場合は-1が返る。

  • 39

    最初に見つかったSeqの位置を返す。

    補足(例文と訳など)

    • List('a,'b,'c,'b,'d).indexOfSlice(List('b,'c)) → 1

    答え

    • indexOfSlice

    解説

  • 40

    最後に見つかったSeqの位置を返す。

    補足(例文と訳など)

    • List('a,'b,'c,'b,'d).lastIndexOfSlice(List('b,'c)) → 1

    答え

    • lastIndexOfSlice

    解説

  • 41

    要素数を返す。

    補足(例文と訳など)

    • Seq("a", "b", "c").size → 3

    答え

    • size

    解説

    デフォルトでは内部で探索(イテレート)するので isTraversableAgainがfalseの場合は注意。

  • 42

    sizeと同様。

    補足(例文と訳など)

    答え

    • length

    解説

  • 43

    長さ(要素数)がlenより大きいとき正、等しいとき0、小さいとき負の数を返す。

    補足(例文と訳など)

    • val l = List(1,2,3)l.lengthCompare(1)l.lengthCompare(2)l.lengthCompare(3)l.lengthCompare(4)l.lengthCompare(5) → -653781

    答え

    • lengthCompare

    解説

  • 44

    条件pを満たす要素の数を返す。

    補足(例文と訳など)

    • List(1,4,9).count(n => n%2==1) → 2

    答え

    • count

    解説

  • 45

    有限のときtrue。 Streamだとfalse。

    補足(例文と訳など)

    • Stream(1).hasDefiniteSize → FALSE

    答え

    • hasDefiniteSize

    解説

  • 46

    何度も探索できるときtrue。 1度しか探索できないときfalse。(例:Source)

    補足(例文と訳など)

    答え

    • isTraversableAgain

    解説

  • 47

    位置nの要素を返す。

    補足(例文と訳など)

    • val s = List('a,'b,'c)s(1) → b

    答え

    • apply

    解説

    nが範囲外のときは例外発生。

  • 48

    要素が含まれる場合true。

    補足(例文と訳など)

    • val s = Set('a,'b,'c)s('b) → TRUE

    答え

    • apply

    解説

  • 49

    キーに該当する値を返す。 無い場合は例外発生。

    補足(例文と訳など)

    • val m = Map('a->11, 'b->22, 'c->33)m('b) → 22

    答え

    • apply

    解説

    Setのcontainsと同じ。

  • 50

    位置nの要素を返す。 nが範囲外のときはfにnが渡され、その戻り値を返す。

    補足(例文と訳など)

    • val s = Seq("a", "b", "c")s.applyOrElse(1, (n:Int)=> "else"+n)s.applyOrElse(3, (n:Int)=> "else"+n) → belse3

    答え

    • applyOrElse

    解説

  • 51

    キーに該当する値を返す。 無い場合はfにkeyが渡され、その戻り値を返す。

    補足(例文と訳など)

    • val m = Map('a->11, 'b->22, 'c->33)m.applyOrElse('b, (k:Symbol)=>99)m.applyOrElse('z, (k:Symbol)=>99) → 2299

    答え

    • applyOrElse

    解説

  • 52

    キーに該当する値をOptionに入れて返す。 無い場合はNone。

    補足(例文と訳など)

    • val m = Map('a->11, 'b->22, 'c->33)m.get('b) → Some(22)

    答え

    • get

    解説

  • 53

    キーに該当する値を返す。 無い場合はdefaultを返す。

    補足(例文と訳など)

    • val m = Map('a->11, 'b->22, 'c->33)m.getOrElse('b, 99)m.getOrElse('z, 99) → 2299

    答え

    • getOrElse

    解説

  • 54

    キーに該当する値がある場合、その値を返す。 無い場合はopで更新し、その値を返す。

    補足(例文と訳など)

    • val m = Map('a->11, 'c->33)m.getOrElseUpdate('b, 9)m.getOrElseUpdate('b, 789) → 99

    答え

    • getOrElseUpdate

    解説

  • 55

    先頭要素を返す。 要素が無い場合は例外発生。

    補足(例文と訳など)

    • List(1,2,3).head → 1

    答え

    • head

    解説

  • 56

    先頭要素をOptionに入れて返す。 要素が無い場合はNoneが返る。

    補足(例文と訳など)

    • List(1,2,3).headOption → Some(1)

    答え

    • headOption

    解説

  • 57

    末尾要素を返す。

    補足(例文と訳など)

    • List(1,2,3).last → 3

    答え

    • last

    解説

  • 58

    末尾要素をOptionに入れて返す。

    補足(例文と訳など)

    • List(1,2,3).lastOption → Some(3)

    答え

    • lastOption

    解説

  • 59

    「位置nを受け取り、範囲内ならfに要素を渡して実行し、trueを返す。範囲外ならfalseを返す」 という関数を返す。

    補足(例文と訳など)

    • val s = Seq("a", "b", "c")val r = s.runWith((s:String)=>print(s+" "))r(1)r(3) → b truefalse

    答え

    • runWith

    解説

  • 60

    「キーを受け取り、存在したらfに値を渡して実行し、trueを返す。存在しない場合はfalseを返す」 という関数を返す。

    補足(例文と訳など)

    • val m = Map('a->11, 'b->22, 'c->33)val r = m.runWith((v:Int)=>print(v+" "))r('b)r('z) → 22 truefalse

    答え

    • runWith

    解説

  • 61

    条件を満たす最初の要素をOptionに入れて返す。 無い場合はNoneを返す。

    補足(例文と訳など)

    • List(1,2,3).find(n => n%2==0) → Some(2)

    答え

    • find

    解説

  • 62

    条件を満たす要素だけのコレクションを返す。

    補足(例文と訳など)

    • List(1,2,3,4,5).filter(n => n%2==1) → List(1, 3, 5)

    答え

    • filter

    解説

    →filterとmapを同時に行いたいならcollect

  • 63

    条件を満たさない要素だけのコレクションを返す。

    補足(例文と訳など)

    • List(1,2,3,4,5).filterNot(n => n%2==1) → List(2, 4)

    答え

    • filterNot

    解説

  • 64

    条件を満たす要素だけのMapを返す。

    補足(例文と訳など)

    • Map(1->2,2->3,3->4).filterKeys(k => k%2==1) → Map((1,2), (3,4))

    答え

    • filterKeys

    解説

  • 65

    条件を満たす要素だけ残す。(その他を削除する)

    補足(例文と訳など)

    • val s = Set(1,2,3,4,5)s.retain(n => n%2==1)s → Set(1, 5, 3)

    答え

    • retain

    解説

  • 66

    filterと同等だが、filterより高速。

    補足(例文と訳など)

    答え

    • withFilter

    解説

    後にforeachやmapが続くときに使う。

  • 67

    最初に条件を満たした要素の位置を返す。

    補足(例文と訳など)

    • List(1,2,3,4,5).indexWhere(n => n%2==0) → 1

    答え

    • indexWhere

    解説

  • 68

    最後に条件を満たした要素の位置を返す。

    補足(例文と訳など)

    • List(1,2,3,4,5).lastIndexWhere(n => n%2==0) → 3

    答え

    • lastIndexWhere

    解説

  • 69

    条件を満たすコレクションと満たさないコレクションを返す。 filter(p)とfilterNot(p)のペア。

    補足(例文と訳など)

    • List(1,2,3,4,5).partition(n => n%2==1) → (List(1, 3, 5),List(2, 4))

    答え

    • partition

    解説

  • 70

    条件を満たす先頭のコレクションを返す。 条件を満たさなかった時点で終了する。

    補足(例文と訳など)

    • List(1,3,2,5).takeWhile(n => n%2==1) → List(1, 3)

    答え

    • takeWhile

    解説

  • 71

    条件を満たす先頭の要素を除いていったコレクション。 条件を満たさなかった時点で終了する。

    補足(例文と訳など)

    • List(1,3,2,5).dropWhile(n => n%2==1) → List(2, 5)

    答え

    • dropWhile

    解説

  • 72

    条件を満たす先頭部分と満たさない残りの部分を返す。 takeWhile(p)とdropWhile(p)のペア。

    補足(例文と訳など)

    • List(1,3,2,5).span(n => n%2==1) → (List(1, 3),List(2, 5))

    答え

    • span

    解説

  • 73

    条件を満たす先頭部分の要素数を返す。

    補足(例文と訳など)

    • List(1,3,2,5).segmentLength(n => n%2==1, 0) → 2

    答え

    • segmentLength

    解説

  • 74

    segmentLength(p, 0)と同じ。

    補足(例文と訳など)

    • List(1,3,2,5).prefixLength(n => n%2==1) → 2

    答え

    • prefixLength

    解説

  • 75

    先頭(start以降)がthatと一致していたらtrue。

    補足(例文と訳など)

    • "abcd".startsWith("abc") → TRUE

    答え

    • startsWith

    解説

  • 76

    末尾がthatと一致していたらtrue。

    補足(例文と訳など)

    • "abcd".endsWith("cd") → TRUE

    答え

    • endsWith

    解説

  • 77

    要素(Mapの場合はキー)が存在したらtrue。

    補足(例文と訳など)

    • List(1,2,3).contains(2) → TRUE

    答え

    • contains

    解説

  • 78

    thatと一致する部分があったらtrue。

    補足(例文と訳など)

    • "abcd".containsSlice("bc") → TRUE

    答え

    • containsSlice

    解説

  • 79

    2つのコレクションの各要素を比較し、全ての要素が条件を満たすときtrue。

    補足(例文と訳など)

    • (List(1,2,3) corresponds List(2,3,4)){(n,m)=> n < m} → TRUE

    答え

    • corresponds

    解説

  • 80

    自分がthatの部分集合であればtrue。

    補足(例文と訳など)

    • Set(2,4) subsetOf Set(1,2,3,4,5) → TRUE

    答え

    • subsetOf

    解説

  • 81

    キーでグルーピングしたMapを返す。 関数fで要素毎に対応するキーを返すようにする。

    補足(例文と訳など)

    • List(1,2,3,4,5).groupBy(n => n%2) → Map((1,List(1, 3, 5)), (0,List(2, 4)))

    答え

    • groupBy

    解説

  • 82

    全ての要素が条件pを満たすとき、true。

    補足(例文と訳など)

    • List(1,2,3).forall(n => n<4) → TRUE

    答え

    • forall

    解説

  • 83

    1つでも条件pを満たす要素があるとき、true。

    補足(例文と訳など)

    • List(1,2,3).exists(n => n%2==0) → TRUE

    答え

    • exists

    解説

  • 84

    要素が(順番も含めて)等しいときtrue。

    補足(例文と訳など)

    • Array(1,2,3) sameElements List(1L,2L,3L) → TRUE

    答え

    • sameElements

    解説

  • 85

    全ての要素を足す。

    補足(例文と訳など)

    • List(1,2,3).sum → 6

    答え

    • sum

    解説

  • 86

    全ての要素を掛ける。

    補足(例文と訳など)

    • List(2,3,4).product → 24

    答え

    • product

    解説

  • 87

    最小要素を返す。

    補足(例文と訳など)

    • List(2,3,1,5,4).min → 1

    答え

    • min

    解説

  • 88

    最大要素を返す。

    補足(例文と訳など)

    • List(2,3,1,5,4).max → 5

    答え

    • max

    解説

  • 89

    Bに変換して比較した最小要素を返す。

    補足(例文と訳など)

    • List("z","aaa", "cc").minBy(_.length) → z

    答え

    • minBy

    解説

  • 90

    Bに変換して比較した最大要素を返す。

    補足(例文と訳など)

    • List("z","aaa", "cc").maxBy(_.length) → aaa

    答え

    • maxBy

    解説

  • 91

    zと要素(左(先頭)から順番)に演算opを行う。 zには「0」を渡す。[2014-08-23]

    補足(例文と訳など)

    • List(1,2,3).foldLeft(0)((z, n) => z - n) → -6((0-1)-2)-3

    答え

    • foldLeft

    解説

  • 92

    要素(右(末尾)から順番)とzに演算opを行う。

    補足(例文と訳など)

    • List(1,2,3).foldRight(0)((n, z) => n - z) → 21-(2-(3-0))

    答え

    • foldRight

    解説

  • 93

    直列コレクションでは(引数の型以外は)foldLeftと同じ。 並列コレクションの場合は各スレッドでopを使って畳み込む。

    補足(例文と訳など)

    • List(1,2,3).fold(0)((z, n) => z + n) → 6

    答え

    • fold

    解説

    zはスレッド数分使われる。

  • 94

    直列コレクションではfoldLeft(z)(seqop)と同じ。 並列コレクションの場合は各スレッドでseqopを使って集約し、それらの結果をcombopで集約する。

    補足(例文と訳など)

    • List(1,2,3).aggregate(BigDecimal(0))((d, n) => d + n, (d1, d2) => d1 + d2) → BigDecimal(6)

    答え

    • aggregate

    解説

    zはスレッド数分使われる。

  • 95

    要素同士を左(先頭)から順に演算する。 要素が1個しかない場合はその値を返し、 要素が無い場合は例外が発生する。

    補足(例文と訳など)

    • List(1,2,3).reduceLeft((z, n) => z - n) → -41-2-3

    答え

    • reduceLeft

    解説

  • 96

    要素同士を左(先頭)から順に演算する。 要素が無い場合はNoneを返す。

    補足(例文と訳など)

    • List(1,2,3).reduceLeftOption((z, n) => z - n) → Some(-4)

    答え

    • reduceLeftOption

    解説

  • 97

    要素同士を右(末尾)から順に演算する。

    補足(例文と訳など)

    答え

    • reduceRight

    解説

  • 98

    要素同士を右(末尾)から順に演算する。

    補足(例文と訳など)

    答え

    • reduceRightOption

    解説

  • 99

    並列コレクションでない場合は(引数の型以外は)reduceLeftと同じ。

    補足(例文と訳など)

    • List(1,2,3).reduce((z, n) => z + n) → 6

    答え

    • reduce

    解説

  • 100

    並列コレクションでない場合はreduceLeftOptionと同じ。

    補足(例文と訳など)

    • List(1,2,3).reduceOption((z, n) => z + n) → Some(6)

    答え

    • reduceOption

    解説

  • 101

    foldLeftを行い、途中結果を格納したコレクションを返す。

    補足(例文と訳など)

    • List(1,2,3).scanLeft(100)((z, n) => z - n) → List(100, 99, 97, 94)

    答え

    • scanLeft

    解説

  • 102

    foldRightを行い、途中結果を格納したコレクションを返す。

    補足(例文と訳など)

    • List(1,2,3).scanRight(100)((n, z) => n - z) → List(100, -97, 99, -98)

    答え

    • scanRight

    解説

  • 103

    並列コレクションでない場合はscanLeftと同じ。[2011-09-18]

    補足(例文と訳など)

    • List(1,2,3).scan(100)((z, n) => z + n) → List(100, 101, 103, 106)

    答え

    • scan

    解説

  • 104

    foldLeftと同じ。

    補足(例文と訳など)

    • List(1,2,3)./:(100){(n, z) => n - z}(100 /: List(1,2,3)){(n, z) => n - z} → 94

    答え

    • /:

    解説

  • 105

    foldRightと同じ。

    補足(例文と訳など)

    • List(1,2,3).:\(100){(n, z) => n - z}(List(1,2,3) :\ 100){(n, z) => n - z} → -98

    答え

    • :\

    解説

  • 106

    foldと同じ。

    補足(例文と訳など)

    • List(1,2,3)./:\(100)((z, n) => z + n) → 106

    答え

    • /:\

    解説

  • 107

    他のコレクションを末尾に結合したコレクションを返す。

    補足(例文と訳など)

    • List(1,2,3) ++ Seq(4,5,6) → List(1, 2, 3, 4, 5, 6)

    答え

    • =++

    解説

    (Scalaでは++はインクリメントではない)

  • 108

    他のコレクションを先頭に結合したコレクションを返す。

    補足(例文と訳など)

    • Seq(1,2,3) ++: List(4,5,6) → List(1, 2, 3, 4, 5, 6)

    答え

    • =++:

    解説

  • 109

    先頭に要素を追加したコレクションを返す。

    補足(例文と訳など)

    • 9 +: List(1,2,3) → List(9, 1, 2, 3)

    答え

    • =+:

    解説

  • 110

    末尾に要素を追加したコレクションを返す。

    補足(例文と訳など)

    • List(1,2,3) :+ 9 → List(1, 2, 3, 9)

    答え

    • :+

    解説

  • 111

    長さがlenになるまで末尾にelemを追加したコレクションを返す。

    補足(例文と訳など)

    • "abc".padTo(5,'z') → abczz

    答え

    • padTo

    解説

  • 112

    位置nの要素を置き換えたコレクションを返す。

    補足(例文と訳など)

    • List('a,'b,'c).updated(1,'z) → List('a, 'z, 'c)

    答え

    • updated

    解説

  • 113

    =+と同じ。

    補足(例文と訳など)

    • Map(1->2).updated(3,4) → Map((1,2), (3,4))

    答え

    • updated

    解説

  • 114

    位置fromからreplaced個の要素をthatに置き換えたコレクションを返す。

    補足(例文と訳など)

    • List('a,'b,'c,'d).patch(1,List('z),2) → List('a, 'z, 'd)

    答え

    • patch

    解説

  • 115

    要素を追加したコレクションを返す。

    補足(例文と訳など)

    • Set(1,2,3) + 4Set(1,2,3) + (4,5) → Set(1, 2, 3, 4)Set(4, 5, 1, 2, 3)

    答え

    • =+

    解説

    (Seqで要素を追加するのは:+)

  • 116

    要素を削除したコレクションを返す。

    補足(例文と訳など)

    • Set(1,2,3) - 2Set(1,2,3,4) - (2,3) → Set(1, 3)Set(1, 4)

    答え

    • -

    解説

  • 117

    キーを削除したコレクションを返す。

    補足(例文と訳など)

    • Map(1->2,3->4,5->6) - 3 → Map((1,2), (5,6))

    答え

    • -

    解説

  • 118

    キーを削除したコレクションを返す。 (Scalaでは--はデクリメントではない)

    補足(例文と訳など)

    • Map(1->2,3->4,5->6,7->8) -- Set(3,5) → Map((1,2), (7,8))

    答え

    • --

    解説

  • 119

    自分と同じ型の空のコレクションを返す。

    補足(例文と訳など)

    • Set(1,2,3).empty → Set[Int]()

    答え

    • empty

    解説

  • 120

    位置nの要素を置き換える。

    補足(例文と訳など)

    • val b = ArrayBuffer('a,'b,'c)b(1) = 'zb → ArrayBuffer('a, 'z, 'c)

    答え

    • update

    解説

  • 121

    キーの値を置き換える。

    補足(例文と訳など)

    • val m = Map('a->1,'b->2,'c->3)m('b) = 9m → Map(('c,3), ('b,9), ('a,1))

    答え

    • update

    解説

  • 122

    includeがtrueの場合、要素を追加する。 includeがfalseの場合、要素を削除する。

    補足(例文と訳など)

    • val s = Set(1,2,3)s(4) = trues(2) = falses → Set(1, 4, 3)

    答え

    • update

    解説

  • 123

    末尾に要素を追加する。

    補足(例文と訳など)

    • val b = ArrayBuffer(1,2,3)b += 4b += (5,6) → ArrayBuffer(1, 2, 3, 4, 5, 6)

    答え

    • =+=

    解説

  • 124

    先頭に要素を追加する。

    補足(例文と訳など)

    • val b = ArrayBuffer(1,2,3)4 +=: b → ArrayBuffer(4, 1, 2, 3)

    答え

    • =+=:

    解説

  • 125

    末尾にコレクションの全要素を追加する。

    補足(例文と訳など)

    • val b = ArrayBuffer(1,2,3)b ++= ArrayBuffer(4,5) → ArrayBuffer(1, 2, 3, 4, 5)

    答え

    • =++=

    解説

  • 126

    先頭にコレクションの全要素を追加する。

    補足(例文と訳など)

    • val b = ArrayBuffer(1,2,3)ArrayBuffer(4,5) ++=: b → ArrayBuffer(4, 5, 1, 2, 3)

    答え

    • =++=:

    解説

  • 127

    キーの値を置き換える。 以前の値をOptionに入れて返す。

    補足(例文と訳など)

    • val m = Map('a->1,'b->2,'c->3)m.put('b, 99)m → Some(2)Map(('c,3), ('b,99), ('a,1))

    答え

    • put

    解説

  • 128

    要素を追加する。 初めての要素だった場合はtrue、既にあった場合はfalseを返す。

    補足(例文と訳など)

    • val s = Set(1,3)s.add(2)s.add(2)s → truefalseSet(1, 2, 3)

    答え

    • add

    解説

    (Seqで要素を追加するのは:+)

  • 129

    位置nに要素を追加する。

    補足(例文と訳など)

    • val b = ArrayBuffer('a,'b,'c)b.insert(1, 'x, 'y)b → ArrayBuffer('a, 'x, 'y, 'b, 'c)

    答え

    • insert

    解説

  • 130

    位置nにコレクションの全要素を追加する。

    補足(例文と訳など)

    • val b = ArrayBuffer('a,'b,'c)b.insertAll(1, List('x, 'y))b → ArrayBuffer('a, 'x, 'y, 'b, 'c)

    答え

    • insertAll

    解説

  • 131

    要素を削除する。

    補足(例文と訳など)

    • val b = ArrayBuffer('a,'c,'e)b -= 'c → ArrayBuffer('a, 'e)

    答え

    • -=

    解説

  • 132

    コレクションの要素を削除する。

    補足(例文と訳など)

    • val b = ArrayBuffer(1,2,3)b --= List(3,4)b → ArrayBuffer(1, 2)

    答え

    • --=

    解説

  • 133

    位置nの要素を削除する。 削除された要素が返る。

    補足(例文と訳など)

    • val b = ArrayBuffer('a,'b,'c)b.remove(1)b → bArrayBuffer('a, 'c)

    答え

    • remove

    解説

  • 134

    位置nの要素をcount個削除する。

    補足(例文と訳など)

    • val b = ArrayBuffer('a,'b,'c,'d)b.remove(1, 2)b → ArrayBuffer('a, 'd)

    答え

    • remove

    解説

  • 135

    要素を削除する。 要素が存在していた場合はtrue、無かった場合はfalseを返す。

    補足(例文と訳など)

    • val s = Set(1,2,3)s.remove(2)s.remove(2)s → truefalseSet(1, 3)

    答え

    • remove

    解説

  • 136

    先頭n個の要素を削除する。

    補足(例文と訳など)

    • val b = ArrayBuffer('a,'b,'c,'d)b.trimStart(2)b → ArrayBuffer('c, 'd)

    答え

    • trimStart

    解説

  • 137

    末尾n個の要素を削除する。

    補足(例文と訳など)

    • val b = ArrayBuffer('a,'b,'c,'d)b.trimEnd(2)b → ArrayBuffer('a, 'b)

    答え

    • trimEnd

    解説

  • 138

    要素を全て削除する。

    補足(例文と訳など)

    • val b = ArrayBuffer(1,2,3)b.clear()b → ArrayBuffer()

    答え

    • clear

    解説

  • 139

    並列コレクションに変換する。

    補足(例文と訳など)

    • List(1,2,3).par → ParVector(1, 2, 3)

    答え

    • par

    解説

  • 140

    並列でないコレクションに変換する。

    補足(例文と訳など)

    • List(1,2,3).par.seq → Vector(1, 2, 3)

    答え

    • seq

    解説

  • 141

    型引数で指定されたコレクションに変換する。

    補足(例文と訳など)

    • Seq(1,2,3).to[List] → List(1, 2, 3)

    答え

    • to

    解説

  • 142

    配列に変換する。

    補足(例文と訳など)

    • List(1,2,3).toArray → Array(1, 2, 3)

    答え

    • toArray

    解説

  • 143

    Bufferに変換する。

    補足(例文と訳など)

    • List(1,2,3).toBuffer → ArrayBuffer(1, 2, 3)

    答え

    • toBuffer

    解説

  • 144

    IndexedSeqに変換する。

    補足(例文と訳など)

    • List(1,2,3).toIndexedSeq → Vector(1, 2, 3)

    答え

    • toIndexedSeq

    解説

  • 145

    Iterableに変換する。

    補足(例文と訳など)

    • List(1,2,3).toIterable → List(1, 2, 3)

    答え

    • toIterable

    解説

  • 146

    Iteratorを返す。

    補足(例文と訳など)

    答え

    • toIterator

    解説

  • 147

    Listに変換する。

    補足(例文と訳など)

    • Set(1,2,3).toList → List(1, 2, 3)

    答え

    • toList

    解説

  • 148

    Mapに変換する。

    補足(例文と訳など)

    • Seq(1->2,3->4).toMap → Map(1 -> 2, 3 -> 4)

    答え

    • toMap

    解説

    値がTuple2でないと変換できない。

  • 149

    Seqに変換する。

    補足(例文と訳など)

    • Set(1,2,3).toSeq → List(1, 2, 3)ArrayBuffer(1, 2, 3)

    答え

    • toSeq

    解説

    Setでは、Scala2.8ではListを返していたが、2.9ではArrayBufferになった。

  • 150

    Setに変換する。

    補足(例文と訳など)

    • List(1,2,3).toSet → Set(1, 2, 3)

    答え

    • toSet

    解説

  • 151

    Streamに変換する。

    補足(例文と訳など)

    • List(1,2,3).toStream → Stream(1, ?)

    答え

    • toStream

    解説

  • 152

    Stringに変換する。(文字列を返す)

    補足(例文と訳など)

    答え

    • toString

    解説

  • 153

    Traversableに変換する。(自分自身を返す)

    補足(例文と訳など)

    答え

    • toTraversable

    解説

  • 154

    Vectorに変換する。

    補足(例文と訳など)

    • Seq(1,2,3).toVector → Vector(1, 2, 3)

    答え

    • toVector

    解説

  • 155

    コンパニオンオブジェクトを取得する。

    補足(例文と訳など)

    • val co = List("A", "B", "C").companionco.empty →

    答え

    • companion

    解説

  • 156

    ビューを返す。

    補足(例文と訳など)

    • val v = List(1,2,3,4,5).view(1,4)v.headv.last → 24

    答え

    • view

    解説

  • 157

    Iteratorを返す。

    補足(例文と訳など)

    • val i = List(1,2,3).iteratorwhile(i.hasNext) println(i.next) → 123

    答え

    • iterator

    解説

  • 158

    逆順のIteratorを返す。

    補足(例文と訳など)

    答え

    • reverseIterator

    解説

  • 159

    size個ずつのコレクションを返すイテレーター。

    補足(例文と訳など)

    • val i = List(1,2,3,4,5).grouped(2)while(i.hasNext) println(i.next) → List(1, 2)List(3, 4)List(5)

    答え

    • grouped

    解説

  • 160

    size個ずつのコレクションをstepずつずらして返すイテレーター。

    補足(例文と訳など)

    • val i = List(1,2,3,4,5).sliding(2)while(i.hasNext) println(i.next) → List(1, 2)List(2, 3)List(3, 4)List(4, 5)

    答え

    • sliding

    解説

  • 161

    キーのイテレーター。

    補足(例文と訳など)

    答え

    • keysIterator

    解説

  • 162

    値のイテレーター。

    補足(例文と訳など)

    答え

    • valuesIterator

    解説

  • 163

    配列に要素をコピーする。

    補足(例文と訳など)

    • val a = Array(1,2,3)List(4,5).copyToArray(a) → Array(4, 5, 3)

    答え

    • copyToArray

    解説

  • 164

    Bufferに要素をコピーする。

    補足(例文と訳など)

    答え

    • copyToBuffer

    解説

  • 165

    自分のコピーを作成する。

    補足(例文と訳など)

    • val a = ArrayBuffer(1,2,3)val b = a.clone()a eq b → FALSE

    答え

    • clone

    解説

  • 166

    StringBuilderに出力する。

    補足(例文と訳など)

    答え

    • addString

    解説

  • 167

    Stringを生成する。

    補足(例文と訳など)

    • List(1,2,3).mkString("[", "-", "]") → [1-2-3]

    答え

    • mkString

    解説

  • 168

    コレクションの全要素を1回ずつ処理する。

    補足(例文と訳など)

    • List(1,2,3).foreach(n => println(n)) → 124

    答え

    • foreach

    解説

    関数fの引数はコレクションの要素。fの戻り値は無視される。

56615

セットの学習コンテンツ

公開初月で
60,000
ダウン
ロード!

無料アプリはこちら!

英単語をウェブサイト
からzuknowに簡単登録

覚えたい単語を選択するだけ!
簡単にzuknowに登録することが
できます

Get the free Chrome Extension

トップ