1

シリアル バス デバイスからメッセージを受信する必要がある Java アプリケーションを開発しています。

私の意図はStringBuffers を使用してこれらのメッセージを処理することでしたが、考慮しなければならないことがあります。メッセージには印刷できない文字 (0x02 など) が含まれている可能性があります。

そのため、私は StringBuffer オブジェクトがそのようなデータを処理するのに適しているのか、それとも収容できる文字の範囲に関連するいくつかの制限があるのか​​ 、もしそうならどのオブジェクトが適切なのか疑問に思っていました. それとも多分byte[]

4

2 に答える 2

1

StringBuffer を使用できます。

アレックスが述べたように、これは一連の Char で構成され、すべての Char は 16 ビットの Unicode 値を表します。

または、スレッド セーフが必要ない場合は、代わりにStringBuilderを使用することをお勧めします。StringBuilder はスレッドセーフではなく、はるかに高速です。

于 2012-11-07T01:09:05.337 に答える
0

giorashc が述べたように、byte[] や bytebuffer のようなより一般的なものよりも StringBuffer を使用したい理由が正確にはわかりませんが、...

StringBuffer は基本的に文字列です。文字列は、charプリミティブ型の配列によってサポートされます。Java では、acharは 0x0000 から 0xFFFF (65,535) の範囲の 16 ビット Unicode 値です。

于 2012-11-06T14:55:27.650 に答える