站内搜索: 请输入搜索关键词

当前页面: 开发资料首页J2SE 专题关于数组中重复元素相加

关于数组中重复元素相加

摘要: 关于数组中重复元素相加


比如我的数组是
String[][] str1 = null;
str1[0] [0]="a";
str1[0] [1]="1";

str1[1] [0]="b";
str1[1] [1]="2";

str1[2] [0]="c";
str1[2] [1]="3";

str1[3] [0]="d";
str1[3] [1]="4";

String[][] str2 = null;
str2[0] [0]="a";
str2[0] [1]="1";

str2[1] [0]="b";
str2[1] [1]="2";

str2[2] [0]="c";
str2[2] [1]="3";

str2[3] [0]="d";
str2[3] [1]="4";

String[][] str3 = null;
str3[0] [0]="a";
str3[0] [1]="1";

str3[1] [0]="b";
str3[1] [1]="2";

str3[2] [0]="c";
str3[2] [1]="3";

str3[3] [0]="d";
str3[3] [1]="4";
我想让0项相同的行的1项相加

得到
str4[0] [0]="a";
str4[0] [1]="3";

str4[1] [0]="b";
str4[1] [1]="6";

str4[2] [0]="c";
str4[2] [1]="9";

str4[3] [0]="d";
str4[3] [1]="12";

请问我应该怎么做 谢谢



如果你的三个str都是固定顺序,a,b,c,d
那么,你只需要写个函数将它们依次相加就是了
String[][] doAdd(String[][] s1, String[][] s2) {
String[][] r = new String[4][];
for (int i = 0; i < 4; i++) {
r[i] = new String[2];
r[i][0] = "a";
r[i][1] = String.valueOf(Integer.parseInt(s1[i][1]) + Integer.parseInt(s2[i][2]));
}

return r;
}

然后执行
String[][] r = doAdd(str1, str2);
r = doAdd(r, str3);
r = doAdd(r, str4);

就OK了。


↑返回目录
前一篇: 关于线程自动销毁的问题
后一篇: 初学Java就被难住了,Java怎么会是这样的? 问题二