私はのドキュメントを読んでいましたStringBuffer
。特に逆行する()方法。そのドキュメントには、代理ペアこの文脈における代理ペアとは何でしょうか?低いそして高い代理母?
ベストアンサー1
「サロゲート ペア」という用語は、UTF-16 エンコード スキームで高コード ポイントの Unicode 文字をエンコードする手段を指します。
Unicode 文字エンコーディングでは、文字は 0x0 から 0x10FFFF までの値にマッピングされます。
Java は内部的に、UTF-16 エンコード方式を使用して Unicode テキストの文字列を格納します。UTF-16 では、16 ビット (2 バイト) のコード単位が使用されます。16 ビットには 0x0 から 0xFFFF の範囲の文字しか格納できないため、この範囲を超える値 (0x10000 から 0x10FFFF) を格納するには、追加の複雑さが使用されます。これは、サロゲートと呼ばれるコード単位のペアを使用して行われます。
The surrogate code units are in two ranges known as "high surrogates" and "low surrogates", depending on whether they are allowed at the start or end of the two-code-unit sequence.