我想排序arrayList以兩種不同的方式,一個由arrayList內的對象的區域和兩個,由名稱(形狀1,形狀2)的arrayList中的對象。當我將它們打印到一個文件中時,這些對象看起來像這樣:shape1 :(點,半徑等...)area = 0.0並且形狀繼續。我試着查看其他類似的問題,但都使用Collections.sort進行了解答。我不知道我應該使用這種方法。這裏有一些代碼,我正在努力給你一個想法:如何排序在java中的組件對象的arrayList
for (int i =0; i <shapes.size();i++){
for (int j = 1; j<shapes.size(); j++){
if (shapes.get(i).getShape().area() > shapes.get(j).getShape().area())
{
//
}
else
{
//
}
}
}
我不知道我應該如何去做這件事。任何指針?對於按名稱排序我必須使用:
shapes.get(i).getName()
我該如何把它放在第i個位置? 。加?或.set? – Milwaukoholic 2012-04-24 03:51:48
@Milwaukoholic使用'set'。經典的交換是這樣的:'Shape tmp = shapes.get(i); shapes.set(i,shapes.get(j)); shapes.set(j,tmp);' – dasblinkenlight 2012-04-24 03:54:35