2012-10-31 19 views
2

如果我用一个例子对于这个问题,这是非常简单的理解:如何获取ArrayList中所有字符串的总长度<String>?

ArrayList<String> array; 
String str = toString(array); 

String toString(ArrayList<String> array) { 
    StringBuilder sb = new StringBuilder(); 
    for(String string : array) { 
     sb.append(string); 
    } 
    return sb.toString(); 
} 

的问题是: 如何有效地获得str的长度而不转变array字符串明确?

回答

12
int length = 0; 
for(String str : array){ 
    length += str.length(); 
} 
+0

你们比我快! –

+0

快速而且很好的答案,伙计们。 – JackWM

11
int length = 0; 
for (String str : array) { 
    length += str.length(); 
} 
+4

哈哈哈,每个角色都和我的回答一样! –

+1

@SeanPatrickFloyd相同的分数太... – Scooter

3

你可以通过ArrayList<String>迭代,并添加每个元素

1

添加只是为了好玩递归变体的长度...

public static int length(List<String> list) { 
    if (list.size() == 0) { 
     return 0; 
    } 
    return list.get(0).length() + length(list.subList(1, list.size())); 
} 

也许不是最有效的方法做到这一点。

相关问题