2011-07-06 2 views

答えて

0

Hmmm ...不変のリストを使用しています。 "不変"という言葉の意味は変更できないということです。そのようなリストの途中に要素を追加する方法があれば、それはバグでしょう。

編集実際には、このようなリストに要素を追加する方法があります不変のリストは、そのリストが常に同じであることを期待します。漠然とした質問への

+1

はい、不変のは、それが変更することはできないことを意味しますが、それは不変であるため、追加操作がA返します新しいコレクション。その新しいコレクションがどのように生成されるのか知りたいですか? – Pallavi

+0

あなたは新しいリストを作成します!不変リストの全ポイントは、変更するたびに新しいものを作ることです! (正確にはリンクリストのトリックではありませんが、そのように思う) – bwawok

2

曖昧な答え:

不変のリストを分割するにはいくつかの方法は、例えば、ありますtakedropを使用します。パーツ(中間の要素を含む)から、新しい不変リストをアセンブルすることができます。 :::を使用してください。これは、JavaのIIRCでと呼ばれます。

詳細が必要な場合は、コードを追加してください。

6

sListはScalaのリストとする、ListはScalaのリストの種類と42追加する要素も聞かせて:

final int half = sList.size /2; 
final List<Int> first = sList.take(half); 
final List<Int> second = sList.drop(half); 
final List<Int> result = first.$colon$colon$colon(second.$colon$colon(42)); 
関連する問題