如何在javafx中对实例化的自定义arraylist进行排序
我正在努力学习编程,并开始使用javafx 我现在面临一个问题,这可能是由于我对java的知识和理解的差距造成的 到目前为止,我已经创建了一个类,如下所示如何在javafx中对实例化的自定义arraylist进行排序,java,list,sorting,javafx,Java,List,Sorting,Javafx,我正在努力学习编程,并开始使用javafx 我现在面临一个问题,这可能是由于我对java的知识和理解的差距造成的 到目前为止,我已经创建了一个类,如下所示 public class Sheet { private String material; private int DimX,DimY; private double quantity;; public Sheet(String _material,int _DimX,int _DimY,double _q
public class Sheet {
private String material;
private int DimX,DimY;
private double quantity;;
public Sheet(String _material,int _DimX,int _DimY,double _quantity){
material = _material;
DimX =_DimX;
DimY =_DimY;
quantity = _quantity ;
}
public String getMaterial(){return material;}
public void setMaterial(String _material) {material = _material;}
public int getDimX(){return DimX;}
public void setDimX(int _DimX){DimX = _DimX;}
public int getDimY(){return DimY;}
public void setDimY(int _DimY){DimY = _DimY;}
public double getQuantity(){return quantity;}
public void setQuantity(double _quantity) {quantity = _quantity;}
}
arraylist是使用
List<Sheet> Sheet_list= new ArrayList<>();
我需要的是对这个arraylist进行排序,但我收到一个错误,该类不是抽象的,并且不重写抽象方法
是否有任何方法可以对由实例化的用户数据形成的、未以编程方式插入的arraylist进行排序
提前感谢列表界面提供了方便的
排序()
方法,使用比较器
。因此,您可以使Sheet
类实现Comparable
,然后将所有工作表对象添加到列表中,并在列表对象上调用Collections.sort(list)
,或者使用sort(Comparator)
version对列表进行排序
如果您希望经常使用按某种顺序打孔的方法,我将使用第一种方法
顺便说一句,我会从@jewelsea remark开始,从基础开始,然后转到JavaFX和更复杂的东西。创建数组列表并尝试对其排序的代码在哪里?arraylist是使用list Sheet_list=new arraylist()创建的;并且条目以类似于Sheet_list.add的形式添加(新的Sheet(string_i,int_x,int_y,double_e));请使用创建列表的代码编辑您的问题,并将列表排序为一般建议我建议先学习编程,然后再学习JavaFX。不需要将学习编程的任务复杂化,同时也可以尝试学习复杂的GUI工具包。另外,在编写Java时,我建议坚持使用。可能是重复的,我已经阅读了comparable和comparator,并尝试使用它们,但我的问题是当我在上面的类上使用它时,例如:公共类表实现comparable,我得到“类不是抽象的,不重写抽象方法。”错误。我还尝试将数组投射到一个可观察列表,并可能对该列表进行排序,但没有效果。程序即将完成,这是我面临的最后一个障碍。您得到的错误信息很清楚-如果您让类实现
compariable
接口,您必须提供compareTo()方法的实现-阅读文档,了解更多关于Java和OOP的基础知识,这将帮助您更轻松地理解和解决此类问题。我将在接下来的几天内对此进行研究,当我对问题有了更完整的了解,可能会有一些新代码时,我将更新问题。谢谢大家
Sheet_list.add(new Sheet(string_i, int_x, int_y,double_e));