我有一个这样的字符串:“名字foo修改栏”
我想拆分此字符串,然后只返回“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,那么这将有效。
我应该如何获得这个结果? 我应该使用我找到的字符串拆分方法还是别的?有没有办法将字符串拆分成arraylist?
感谢。
答案 0 :(得分:5)
在一行中:
String name = nameString.split(" ")[1];
二:
String []tokens = nameString.split(" ");
String name = tokens[1];
创建一个ArrayList:
ArrayList<String> tokenList = new ArrayList<String>(Arrays.asList(tokens));
答案 1 :(得分:2)
最简单的方法是使用方括号表示法从数组中获取元素:
String nameString = "Name foo Modified bar";
String name = nameString.split(" ")[1];
或者,如果您特别希望它作为集合:
List<String> nameList = Arrays.asList(nameString.split(" "));
String name = nameList.get(1);
答案 2 :(得分:1)
String.split()返回一个数组。
所以
String[] elems = nameString.split(" ");
String result = elems[1];
有关详细信息,请参阅Arrays教程。
答案 3 :(得分:0)
如果你想要ArrayList -
new ArrayList<String>( Arrays.asList(nameString.split(" ") ) )
答案 4 :(得分:0)
有没有办法将字符串拆分为arraylist? 是:
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;
}
}