0

データフローの長いストリームをデコードする必要があります。

各データは、区切り文字で区切られたエンコードされたシーケンスで構成される長い文字列です。各シーケンスは、エンコードされたキーで構成されています。

エンコードされた「キー」とそれに相当する文字との間のマッピングは、個別に維持されます。アイデアは、マップ内の各キーを検索し、対応するアルファベットに置き換えることです。

これを達成する最も効率的な方法は何ですか。

部分文字列であり、このようにストリームを処理する正しい方法を置き換えますか? それとも、より高性能な代替手段がありますか?

4

2 に答える 2

0

長い文字列で何度も置換を繰り返すと、非常に非効率的になります。そして、あなたが言うように、入力は「流れている」ので、すべての入力広告処理を一度に読み取るのではなく、小さなチャンクで読み取って処理する必要があります。バッファごとにバッファすると思います。

StringTokenizer区切り文字で分割するには、受信データを処理します。

着信トークンごとに置換を実行し、可能であればそれを出力ストリームに直接書き込むか、StringBuilder.

于 2013-04-13T04:51:51.380 に答える