よくJavaの解説には、VectorとArrayListの違いはスレッドセーフであるかないかだということが書かれている。そのような解説を読むと、スレッドセーフな可変長配列がほしい場合にはVectorを使えば良いと思ってしまいそうだが、私は同期を目的としてもVectorは使うべきではないと思う。 Collections.synchronizedListメソッドによる同期 Vectorは単にArrayListのスレッドセーフ版ではなく、Java1.0のときに導入されたレガシークラスだ。Java1.2でCollections Frameworkが導入され、Vectorに代えてList(ArrayListやLinkedList)を用いることが推奨されるようになった。スレッドセーフなListを実現したいときには、VectorではなくCollections.synchronizedListメソッドを用
JavaScriptの配列 vol.1 -配列の宣言-, JavaScriptの配列 vol.2 -配列の宣言(続)- では、Javascript における配列の宣言についてでした。 さて、今回は連想配列(ハッシュ)についての備忘録です。連想配列(ハッシュ)についてもやはりJavaScript は摩訶不思議な言語です。 1. 連想配列(ハッシュ)の宣言 (ふつうの)配列の定義同様、連想配列の定義もさまざまなバリエーションがあります。結論から言うのはおもしろくないものですが、バリエーションはあれど (1) を用いるのが連想配列であるとわかりやすくてよいと思います。 (1) オーソドックスな連想配列 var hash_sample_1 = new Array(); hash_sample_1['name'] = "真夜中ナビ 深夜営業のお店探し"; hash_sample_1['url'] =
List、Set、Mapインターフェイスを持つ実装クラスには複数のものがあり、それぞれには特徴があります。例えば同じListインターフェイスを持つArrayListとLinkedListを比較すると、LinkedListを使った方が、リスト途中に要素を挿入する操作が高速で行えますが、使用メモリ量はArrayListよりも多くなってしまいます。そのため、すでにデータが格納されているインスタンスをいったん別のCollection Framework型にコピーして変換を行い、変換後のインスタンスに対して操作を行った方が結果として高速に処理できる場合があります。また、すでにデータが格納されているインスタンスをあるメソッドの引数として渡したいが、型が異なるためそのまま渡すことができない場合も、型の変換が必要となります。 本Tipsでは型の異なるCollection同士、または型の異なるMap同士の変
nextindex.jp 2020 Copyright. All Rights Reserved. The Sponsored Listings displayed above are served automatically by a third party. Neither the service provider nor the domain owner maintain any relationship with the advertisers. In case of trademark issues please contact the domain owner directly (contact information can be found in whois). Privacy Policy
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く