1

私はこのような文字列を持っています: "Name foo Modified bar"

この文字列を分割して、「foo」のみを返したい。私は文字列の分割を調べて、これを見つけました:

String nameString = "Name foo Modified bar";
System.out.println(
    java.util.Arrays.toString(
    nameString.split(" ")
));

出力:

[Name, foo, Modified, bar]

ローカル変数として、それ自体で「foo」を取得できるようにしたいと思います。このようなもの:

String name = output.get(1);

これは、出力がnamestringが分割されたArrayListである場合に機能します。

この結果を得るにはどのようにアプローチすればよいですか?私が見つけた文字列分割方法または何か他のものを使用する必要がありますか?文字列を配列リストに分割する方法はありますか?

ありがとう。

4

5 に答える 5

5

一行で:

String name = nameString.split(" ")[1];

2つで:

String []tokens = nameString.split(" ");
String name = tokens[1];     

ArrayListを作成するには:

ArrayList<String> tokenList = new ArrayList<String>(Arrays.asList(tokens));
于 2012-07-19T15:50:38.163 に答える
2

最も簡単な方法は、角括弧表記を使用して配列から要素を取得することです。

String nameString = "Name foo Modified bar";
String name = nameString.split(" ")[1];

または、コレクションとして特に必要な場合:

List<String> nameList = Arrays.asList(nameString.split(" "));
String name = nameList.get(1);
于 2012-07-19T15:54:21.110 に答える
1

String.split()は配列を返します。

それで

String[] elems = nameString.split(" ");
String result = elems[1];

詳細については、アレイのチュートリアルを参照してください。

于 2012-07-19T15:51:12.407 に答える
0

ArrayListが必要な場合-

new ArrayList<String>( Arrays.asList(nameString.split(" ") ) )
于 2012-07-19T15:51:44.673 に答える
0

文字列を配列リストに分割する方法はありますか?はい:

String toFindString="foo";
String nameString = "Name foo Modified bar";
List<String> nameStringList = Arrays.asList(nameString.split(" "));

リストから任意の文字列を検索します。

for (String string : nameStringList) {
        if(string.equals(toFindString)){
                return string;
        }
    }
于 2012-07-19T15:52:18.323 に答える