您好我需要使用选择排序对此无序链接的对象列表进行排序。但我需要将无序列表转换为数组以使用排序,我不知道如何设置它。然后我需要将数组添加回无序链表。这是我的代码
LinkedUnorderedList <games> c1 = new LinkedUnorderedList <>();
// stack for the code 3
LinkedListStack <games> transactions = new LinkedListStack <games> ();
//Stack for the copy
ArrayStack <games> copyA = new ArrayStack <games> ();
Scanner fileScan = new Scanner(new File("input.txt"));
int code;
String name;
String rt;
String dev;
int year;
games obj;
games tobj;
while(fileScan.hasNext())
{
code = fileScan.nextInt();
if(code == 3)
{
name = fileScan.next();
dev = fileScan.next();
year = fileScan.nextInt();
rt = fileScan.next();
tobj = new games(name,dev);
transactions.push(tobj);
}
else
{
name = fileScan.next();
dev = fileScan.next();
//System.out.print("hello");
year = fileScan.nextInt();
rt = fileScan.next();
obj = new games(name,dev,year,rt);
c1.addToRear(obj);
}
}
System.out.print(c1.toString());
Iterator <games> cpy = c1.iterator();
games element;
while(cpy.hasNext())
{
element = cpy.next();
copyA.push(element);
}
cpy = c1.iterator();
while(cpy.hasNext())
{
info += cpy.next();
}
String ar [] = new String [c1.count];
for(int index = 0; index < c1.count;index++)
{
ar[index] = c1[index];
}
答案 0 :(得分:0)
您的问题实际上只询问如何在数组和列表之间进行转换,而不是如何对它们进行排序。下面是Java标准库关于将列表转换为数组的一些指示,反之亦然。
Java Collections框架中的所有集合(所有形式的列表和其他集合)都有一个方法toArray()
,它将集合转换为数组。
框架的另一个有用部分是Collections
类。它有一个addAll()
方法,接受Collection
和一个数组,并将数组中的元素添加到集合中。
使用数组时,您需要熟悉方便的Arrays
类。它提供的一个方便的方法是asList()
,它返回一个List
实现,它包含你提供的数组中的所有元素。这可能很有用,例如,与所有集合都具有的addAll()
结合使用。