我需要维护一个列表,其中包含两个字符串类型的值 say v1,v2 对于每个键 say k。 什么是更好的选择
- Hashmap 的值包含包含 v1 和 v2 的字符串,并在选择后使用 split() 检索正确的值。
- Hashmap 的值包含两个字符串变量的数组
我正在创建一个 Android 应用程序,所以只关心性能。在第二种情况下,我可以直接访问,但每个值都将包含另一个数组(我不知道,但它看起来很复杂),而在第一种情况下,它将在每次访问时使用 split 函数,如 v.split(",")[0 ]
请指导我。
Map<String,String[]> listMap= new HashMap<String, String[]>();
Map<String,String> listMap1= new HashMap<String, String>();;
for (int i = 1; i < tl.getChildCount(); i++) {
TableRow row = (TableRow) tl.getChildAt(i);
COLOR_TABLE clr = (COLOR_TABLE) row.getTag();
if (clr == COLOR_TABLE.green) {
//comp
String x1=listMap1.get( ((TextView) row.getChildAt(0)).getText());
String x2=listMap.get( ((TextView) row.getChildAt(0)).getText());
// now i have to add two string values in a list seperately
}
}
最佳答案
永远不要滥用字符串!它有时可能很慢,它们不是为此目的而制作的。
如果您想更加面向对象,可以使用通用 Pair 类:
public class Pair<A, B> {
public A first;
public B second;
public Pair(A first, B second) {
this.first = first;
this.second = second;
}
}
当然你可以做得更好,使用访问器等等。
关于java - 哪个更好?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19044584/