シナリオ:高価な操作をキャストしていますか?
- 私は大きなファイル(文字のファイル)を解析しています。たとえば、.csvファイル(正確には私のケースではない)
- ファイル全体をメモリに保持することはできません。だから、私はバッファ戦略を実装しなければならない。
- メモリ内に一定数の行を保持するジェネリックハンドラを(Stringsとして)ビルドしたいと考えています。このハンドラは、不要な行を削除しながら、必要に応じて他の行をフェッチします。
- このハンドラーでは、行をJavaオブジェクトに変換し、それらのオブジェクトの変更を操作するパーサーを構築します。変更が完了すると(オブジェクトの一部のフィールドを更新する)、変更をファイルに保存し直します。
はI必要があります。
- 代わりの文字列の配列としてバッファを維持するには、私が(単一キャストをやって)オブジェクトとして直接バッファを維持する必要がありますか?または...
- 私はバッファ上で操作する必要があるたびに、正しいオブジェクトに情報をキャストし、変更を行い、変更をファイルに保存し直してください。逐次操作には補助的なキャストが必要です。
私は物事を単純に保つ必要があります。 提案がありますか?
文字列を他のデータ型に正確にどのようにキャストしていますか? –
あなたはキャストや解析について話していますか? – fortran
これはもっと複雑です。これはStringからのキャストはできません.Interface Rowやその他の実装があります。すべての実装は、オブジェクトを返すコンテナのようなものです。そのオブジェクトをキャストする必要があります。特定のRowでいくつかの変更を行う必要がある場合は、内部メカニズムのキャストが必要です。 –