|
I have been racking my head on the wall with this one. Everything in my
mind says it should be working, but it doesn't come out with the right order
and I seem to lose Vector elements in the process.
I am trying to sort Objects in a Vector based on the value of one of the
fields within each Object. Here is my sort routine and the class that the
Objects in the Vector are instantiated from. I am sorting on field strNbr
(Store Number).
I have looked at other examples of sorting Vectors in some mailing list
threads, but they are either sorting String objects or using the Comparator
to sort a Vector. Neither of which seem to fit my scenario.
Thanks for any input,
Aaron Bartell
for (i = 0; i <= vAllCmp.size() - 1; i++) {
allCmp = (IRGPerf) vAllCmp.get(i);
// The "(vAllCmp.size() - i)" is so you don't continue to sort objects
// that have already been sorted.
for (j = 0; j <= (vAllCmp.size() - i) - 2; j++) {
IRGPerf temp = (IRGPerf) vAllCmp.get(j+1);
// If the next element (temp) is less than the current element
(allCmp),
// do a swap.
if (temp.strNbr < allCmp.strNbr) {
vAllCmp.set(j, temp);
vAllCmp.set(j + 1, allCmp);
}
}
}
class IRGPerf {
String companyOrStore;
int strNbr;
int strErrCnt;
int plntErrCnt;
public int getPlntErrCnt() {
return plntErrCnt;
}
public int getStrErrCnt() {
return strErrCnt;
}
public void setPlntErrCnt(int i) {
plntErrCnt = i;
}
public void setStrErrCnt(int i) {
strErrCnt = i;
}
public int getStrNbr() {
return strNbr;
}
public void setStrNbr(int i) {
strNbr = i;
}
}
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2025 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.