空の値を除く Java 文字列の分割
split() メソッドを使用して文字列を分割する場合、分割操作の結果生じる空の値は次のようになります。通常、結果の配列から削除されます。これにより、特に空の値が含まれる可能性のある文字列を操作する場合、予期しない結果が生じる可能性があります。
次のコード スニペットを考えてみましょう。
String data = "5|6|7||8|9||"; String[] split = data.split("\|"); System.out.println(split.length);
上記の例では、予期される出力は配列です。 8 つの要素: [5、6、7、空、8、9、空、空]。ただし、実際の出力は空の値を除いて 6 つの値のみです。
この問題に対処し、結果の配列に空の値が確実に含まれるようにするには、split() メソッドのオーバーロード バージョンを使用できます。は、負の値に設定された追加の制限パラメーターを受け取ります。
String[] split = data.split("\|", -1);
制限パラメーターを -1 に設定することで、分割パターンが適用される回数に制限がないことを示します。これにより、結果の配列から末尾の空の文字列を除外するというデフォルトの動作が防止されます。
split() メソッドのドキュメントには、制限がゼロより大きい場合、その制限と結果の配列までパターンが適用されると記載されています。制限を超えない長さになります。制限が正でない場合、パターンは可能な限り何度でも適用され、結果の配列は任意の長さにすることができます。
末尾の空の文字列を除外するデフォルトの動作は、空の文字列にのみ適用されることに注意することが重要です。分割操作の結果として作成される文字列。元の文字列に空の文字列がすでに存在する場合、その文字列は結果の配列に引き続き含まれます。
split() メソッドの動作を理解し、limit パラメータを効果的に利用することで、含める文字列を制御できます。または、結果の配列内の空の値を除外して、分割操作で望ましい結果が得られるようにします。
以上がJava 文字列を分割するときに空の文字列を保持するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。