私はCollections.shuffle(List)javadocを読んでいて、 RandomAccessjavadocを調べました。
リストの実装で使用されるマーカーインターフェイスは、高速(通常は一定時間)のランダムアクセスをサポートしていることを示します。[...]
このインターフェイス(Serializableなど)にメソッドがないのはなぜですか?これの設計上の理由は何ですか?
Listsだけがこのインターフェースを「実装」しているとしても、Eget()
をメソッドとして設定してみませんか?すべてのリストがランダムアクセスであるとは限りませんが、メソッドがない場合にこのインターフェイスを使用するにはどうすればよいですか?
このようなもの:
if(object instanceof RandomAccess){
// should I cast it if no operations can be done? why?
}
また、リストのみがRandomAccessになることができますか?ファイルはどうですか?