数组排序对应输出???? 现在有两个向量,一个为数字向量A(可排序且有重复数字,比如1,2,2,4等),另一个是字符向量B(不可排序,没有重复值,如A,B,C,D等),并且两个向量的SIZE相同,且两个向量对应的值一一对应,我想对向量A进行排序,输出对应的B向量中的值,并且对应于A中相同数字的B向量中的值组成一个整体(如向量vector),不知道如何处理,求助!HELP ME? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 java.util.Collections.sort(List l) class A{int a;char b;}List aList=new ArrayList();for(..numVector..//遍历){ A=new A(); A.a=numVector.get(i).intValue(); A.b=charVector.get(i).charAt(0); aVector.add(a);}Collections.sort(aList,new Comparator{ public int compare(Object o1, Object o2) { A a1=(A)o1; A a2=(A)o2; return a1.a-a2.a; } }); return a1.a-a2.a;-------------这样的写法在thinking in java里是不提倡的,有可能导致溢出,比如一个大的int减去一个绝对值很大的负数,结果超出int范围而溢出所以更好的写法是采用> < ==等比较运算符 输入的时候,两个向量是一对一1 A2 B2 C4 D 输出时,两个向量也是一对一1 A2 {B,C}4 D 本人的目标主要是达到上述要求 to liu_you(滴水藏海) List aList=new ArrayList();这句是干吗用的还有 aVector.add(a); 里面的a代表什么,aVector是不是上面定义的aList??? 这个用hashTable储存key-value对,如果读到key重复,那么 valueNew=value1+value2然后对有序向量排序,按其排序后顺序输出对应key-value值,遇到key重复只输出一遍。 java程序中导入的标准类不需要配置CLASSPATH吗? 读取jar包中的文件的诡异问题 jdbc连接oracle的问题! 求侯捷译的thinking in java第二版的简体中文版 昨天刚看Java.谁能提供标准键盘输入的例子? 请问这样的机能运行JAVA吗? 请教:如何终止(退出)这段(阻塞)代码的执行 为什么提示包不存在??? 请问用java applete如何实现打印报表功能? jdbc的问题! 初学者请教 关于jar问题
for(..numVector..//遍历)
{
A=new A();
A.a=numVector.get(i).intValue();
A.b=charVector.get(i).charAt(0);
aVector.add(a);
}Collections.sort(aList,new Comparator{
public int compare(Object o1, Object o2)
{
A a1=(A)o1;
A a2=(A)o2;
return a1.a-a2.a;
}
});
-------------
这样的写法在thinking in java里是不提倡的,有可能导致溢出,比如一个大的int减去一个绝对值很大的负数,结果超出int范围而溢出
所以更好的写法是采用> < ==等比较运算符
1 A
2 B
2 C
4 D
输出时,两个向量也是一对一
1 A
2 {B,C}
4 D
本人的目标主要是达到上述要求
还有 aVector.add(a); 里面的a代表什么,aVector是不是上面定义的aList???
用hashTable储存key-value对,如果读到key重复,那么 valueNew=value1+value2
然后对有序向量排序,按其排序后顺序输出对应key-value值,遇到key重复只输出一遍。