Buffers | 目次 |
可変な列の重要なサブカテゴリはバッファ(Buffer)です。 バッファは既存要素の更新だけなく、要素の挿入・要素の削除・および新しい要素の末尾への効率的な追加もできます。 バッファでサポートされる新しいメソッドのうち主要なものは、 末尾に対する要素の追加のための+=および++=、 先頭に対する追加のための+=:および++=:、 要素の挿入のためのinsertおよびinsertAll、 要素の削除のためのremoveおよび-=です。 これらの演算は以下の表に要約できます。
バッファの実装で良く使われるのはListBufferとArrayBufferの2つです。 その名前が示すようにListBufferはリストによって支えらられ、要素のリストへの効率的な変換をサポートし、 一方でArrayBufferは配列によって支えられ、素早く配列に変換できます。
何であるか | 何をするか |
---|---|
追加: | |
buf += x | 要素xをバッファに追加して、buf自身を結果として返す。 |
buf += (x, y, z) | 与えらえた要素をバッファに追加する。 |
buf ++= xs | xsの全ての要素をバッファに追加する。 |
x +=: buf | 要素xをバッファの最初に追加する。 |
xs ++=: buf | xsの全ての要素をバッファの最初に追加する。 |
buf insert (i, x) | バッファの添字iの場所に要素xを挿入する。 |
buf insertAll (i, xs) | バッファの添字iの場所にxsの全ての要素を挿入する。 |
削除: | |
buf -= x | 要素xをバッファから取り除く。 |
buf remove i | 添字iにある要素をバッファから取り除く。 |
buf remove (i, n) | 添字iから始まるn要素をバッファから取り除く。 |
buf trimStart n | バッファから最初のn要素を取り除く。 |
buf trimEnd n | バッファから最後のn要素を取り除く。 |
buf.clear() | バッファの全ての要素を取り除く。 |
複製: | |
buf.clone | bufと同じ要素を持つ新しいバッファ。 |
続いては: 集合
Buffers | 目次 |