Bir bean icerisindeki alanı vererek compare işlemi yapabiliriz.
Elimde Variable beanim var. Variable'ın ise name ve label gibi özellikleri var.
allVariables listemin label'a göre sıralı gelmesini istiyorum.
Yapacak olduğum işlem;
BeanComparator compareLabel = new BeanComparator("label", Collator.getInstance(new Locale("tr", "TR")));
Collections.sort(allVariables, compareLabel);
Atrık allVariables listem label'a göre sıralı bir şekilde gelecek. Eğer name'e göre gelmesini isteseydim "label" yerine "name yazmam yeterli olacaktı. Bu sayede ayrı bir comparator yazmak zorunda kalmıyoruz.
(Java & iReport & JasperReport & JSF & Seam) ~ {Aklımdan gelip geçen java ile ilgili herşey :) }
21 Eylül 2011 Çarşamba
7 Eylül 2011 Çarşamba
Collections.sort
Türkçe karkterlerine uygun compare işlemi için...
//Iki farkli sıralama icin
Collections.sort(dataList, new Comparator() {
@Override
public int compare(ReportBean o1,ReportBean o2) {
Collator trCollator = Collator.getInstance(new Locale("tr", "TR"));
int compareTo;
compareTo = o1.getWageDescription().compareTo(o2.getWageDescription());
if(compareTo == 0)
compareTo = o1.getPersSicil().compareTo(o2.getPersSicil());
return compareTo;
}
});
Kaydol:
Kayıtlar (Atom)