3

TextArea個別の値を入力してください:

例えば:

値1

値2

値3

Value4

値5

Stringそれらを配列に入れる速い方法はありますか

String[] newStringArray = ???
4

2 に答える 2

7

を使用しString.split()ます。TextArea名前が付いている場合は、次のtextAreaようにします。

String[] values = textArea.getText().split("\n");
于 2010-06-02T09:53:42.463 に答える
5

あなたが使いたいString.split(String regex)

戻り値: 指定された正規表現の一致の周りでこの文字列を分割することによって計算された文字列の配列

だから、おそらくこのようなもの:

String[] newStringArray = textAreaContent.split("\n");

textAreaContentこれにより、文字列がの一致に分割"\n"されます。これは、Swingテキストエディターの正規化された改行区切り文字です(javax.swing.text.DefaultEditorKitAPIで指定されています)。

[...]ドキュメントがメモリ内にある間、ドキュメント"\n"がディスク上にあるときに改行がどのように定義されるかに関係なく、文字は改行を定義するために使用されます。したがって、検索の目的で、"\n"常に使用する必要があります。

正規表現は、特定のニーズ(たとえば、複数の空白行をどのように処理するか)に応じていつでも作成できますが、このメソッドは必要なことを実行します。


    String[] parts = "xx;yyy;z".split(";");
    for (String part : parts) {
        System.out.println("<" + part + ">");   
    }

これは印刷します:

<xx>
<yyy>
<z>

これは複数の空白行を無視します:

    String[] lines = "\n\nLine1\n\n\nLine2\nLine3".trim().split("\n+");
    for (String line : lines) {
        System.out.println("<" + line + ">");           
    }

これは印刷します:

<Line1>
<Line2>
<Line3>
于 2010-06-02T09:51:50.630 に答える