我正在尝试使用双倍的score值属性对我的自定义类染色体进行排序。这些染色体存储在ArrayList中。我知道我必须使用一个比较器,但在过去一个小时内我在网上阅读了很多不同的观点,所以我完全困惑。对数组中的对象进行双值排序
附加是我的代码,如果有人能指出我在正确的方向,我将不胜感激。
public class Chromosome
{
public Gene[] genes;
public double score;
public Chromosome(int l)
{
genes = new Gene[l];
}
public int getLength()
{
return genes.length;
}
public void printChromo()
{
for(int i=0;i<this.genes.length;i++)
{
System.out.println(""+this.genes[i].teacher+","+
this.genes[i].lecture+","+
this.genes[i].room+","+
this.genes[i].time+"");
}
}
public void setScore(double score)
{
this.score=score;
}
public double getScore()
{
return this.score;
}
}
不知道该有所作为,但成绩只能是一个双间,并包括0.0〜1.0
发现,而这个问题谷歌“java double sort”用于我的遗传alghorithm – sweetrenard