Java 对象添加到列表中,但不与其他对象一起排序,而是添加到末尾

Java 对象添加到列表中,但不与其他对象一起排序,而是添加到末尾,java,arrays,list,sorting,Java,Arrays,List,Sorting,我向列表中添加了对象,但当我对列表进行排序时,所有内容都被很好地排序;仅在末尾添加新对象。有什么想法吗 这是代码: // creating object ScheduleDay sDay = new ScheduleDay(); // all attributes are optional; but even if I add them all, it still isn't sorted sDay.setDate(dt1.format(cal.getTime())); // adding to

我向列表中添加了对象,但当我对列表进行排序时,所有内容都被很好地排序;仅在末尾添加新对象。有什么想法吗

这是代码:

// creating object
ScheduleDay sDay = new ScheduleDay();
// all attributes are optional; but even if I add them all, it still isn't sorted
sDay.setDate(dt1.format(cal.getTime()));
// adding to the list
standardShiftItemsPerEmployee.add(sDay);

// sorting
Arrays.sort(standardShiftItemsPerEmployee.toArray());

for (ScheduleDay s : standardShiftItemsPerEmployee)
        System.out.println(s.getDate());
结果: 2014年9月8日 2014年9月9日 2014年9月10日 2014年9月11日 2014年9月12日 06-09-2014替换
数组.sort(standardShiftItemsPerEmployee.toArray())按集合.sort(standardShiftItemsPerEmployee)
替换数组.sort(standardShiftItemsPerEmployee.toArray())按集合.sort(standardShiftItemsPerEmployee)
数组.sort(standardShiftItemsPerEmployee.toArray())

这不会对你的收藏进行排序。它创建一个包含集合元素的新数组,并对该数组进行排序。并且您没有保留对该排序数组的任何引用

集合中元素的顺序保持不变。

Arrays.sort(standardShiftItemsPerEmployee.toArray())

这不会对你的收藏进行排序。它创建一个包含集合元素的新数组,并对该数组进行排序。并且您没有保留对该排序数组的任何引用


集合中元素的顺序保持不变。

这就是
列表的作用。您是在询问如何使用已排序的集合,如何对集合进行排序,还是只是检查您对列表的理解是否正确?顺便说一句,您正在排序的数组,您正在丢弃。i、 e.不再使用数组。这就是
列表
应该做的。您是在询问如何使用已排序的集合,如何对集合进行排序,还是只是检查您对列表的理解是否正确?顺便说一句,您正在排序的数组,您正在丢弃。i、 e.您不再使用该数组。这如何解决他的问题?@mostruash toArray()返回的当前代码排序数组不是基础数组,而是它的副本如何解决他的问题?@mostruash toArray()返回的当前代码排序数组不是基础数组,而是它的副本