正在解析 java 中的数组列表
parsing array list in java
我有以下数组列表输入:
[item II, model IX, brand XX]
期望的输出如下:
[II, IX, XX]
我尝试以下操作:
int size = names.size();
for(int i = 0; i < size; i++)
{
System.out.println(names);
String d=Arrays.toString(names.get(i).split("\s+"));
System.out.println(d);}
上面的代码会return一个字符串如下,我纠结于如何对字符串进行索引,在这种情况下,以简单的方式取第二个元素。
[item, II]
[model, IX]
[brand, XX]
String.split() 方法return是一个字符串数组。例如,"item II".split("\s+")
会 return 一个字符串数组,例如:{"item", "II"}。所以,你可以只调用数组中的第二个项目 returned by split method.
String d = names.get(i).split("\s+")[1];
我想这就是你想要的。拆分后,其中returns一个数组,可以索引第二项。
List<String> names = new ArrayList<String>();
names.add("item II");
names.add("model IX");
names.add("brand XX");
List<String> secondNames = new ArrayList<String>();
for (String name : names) {
String second = name.split("\s+")[1]; // get second item
secondNames.add(second);
}
使用流:
package parsestring;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
public class ParseOnSpace {
public static void main(String[] args) {
List<String> names = new ArrayList<>(Arrays.asList("item II", "model IX", "brand XX"));
List<String> values = names.stream()
.map(name -> name.split(" ")[1])
.collect(Collectors.toList());
System.out.println(values);
}
}
我有以下数组列表输入:
[item II, model IX, brand XX]
期望的输出如下:
[II, IX, XX]
我尝试以下操作:
int size = names.size();
for(int i = 0; i < size; i++)
{
System.out.println(names);
String d=Arrays.toString(names.get(i).split("\s+"));
System.out.println(d);}
上面的代码会return一个字符串如下,我纠结于如何对字符串进行索引,在这种情况下,以简单的方式取第二个元素。
[item, II]
[model, IX]
[brand, XX]
String.split() 方法return是一个字符串数组。例如,"item II".split("\s+")
会 return 一个字符串数组,例如:{"item", "II"}。所以,你可以只调用数组中的第二个项目 returned by split method.
String d = names.get(i).split("\s+")[1];
我想这就是你想要的。拆分后,其中returns一个数组,可以索引第二项。
List<String> names = new ArrayList<String>();
names.add("item II");
names.add("model IX");
names.add("brand XX");
List<String> secondNames = new ArrayList<String>();
for (String name : names) {
String second = name.split("\s+")[1]; // get second item
secondNames.add(second);
}
使用流:
package parsestring;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
public class ParseOnSpace {
public static void main(String[] args) {
List<String> names = new ArrayList<>(Arrays.asList("item II", "model IX", "brand XX"));
List<String> values = names.stream()
.map(name -> name.split(" ")[1])
.collect(Collectors.toList());
System.out.println(values);
}
}