データのテーブルがあります(列の数は行ごとに長さが異なる場合があります)。また、データの新しい行を削除または追加できる必要があります。
このデータを保存するための最良の方法は何ですか?
私の最初の推測はですArrayList
。
データのテーブルがあります(列の数は行ごとに長さが異なる場合があります)。また、データの新しい行を削除または追加できる必要があります。
このデータを保存するための最良の方法は何ですか?
私の最初の推測はですArrayList
。
2つのアプローチ:
すべてを文字列に変換しArrayList<List<String>>
、各エントリが。で表される行であるを使用しArrayList<String>
ます。
Row
dystroyが言ったように、テーブルにaを表すクラスを作成し、ArrayList<Row>
row.getDate()
、の代わりにrow.get(3)
)。リストがスタックとして機能することを期待する場合は特に、LinkedListを選択します。
ArrayListの主な欠点は、容量に達したときにこれがより大きなテーブルを再作成することです=>テーブルの割り当てとコピーのパフォーマンスが低下します。
LinkedListの場合、すべてがポインターによって機能するため、容量の概念はありません。
私によると、LinkedListではなくArrayListを好む主な(そしておそらくほとんどの場合はユニークな...)理由は、主に特定のインデックスにアクセスしたい(その一部を読んだ)場合です。ArrayListではO(1)ですが、LinkedListではO(n)です。
詳細については、この投稿を読むことができます: