我的第一个问题。
假设我有java中的字符串数组列表
ArrayList<string> s= new ArrayList<string>;
它包含按大小排序的列表。
s.add("ab");
s.add("abc");
s.add("aab");
s.add("baab");
s.add("abcd");
我想要做的是,迭代列表并选择具有相同长度的元素组并将其放入单独的数组中。
第 1 组 ab 第 2 组 abc、aab 等...
我正在用java做这个,请帮忙
最佳答案
由于它们已经按大小排序,所以很容易。这是一种可行的方法:
ArrayList<ArrayList<String>> listofLists = new ArrayList<ArrayList<String>>();
int length = -1;
for(String str : s) { // where s is your sorted ArrayList of Strings
if(str.length() > length) {
listofLists.add(new ArrayList<String>());
length = str.length();
}
listofLists.get(listofLists.size()-1).add(str);
}
最后,listofLists
将是 ArrayList
的ArrayLists
包含Strings
组相同长度的。同样,这取决于 s
(您的 ArrayList<String>
)按大小排序。另外,String
此处必须大写。
关于java - 解析数组并提取相同长度的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21120454/