gpt4 book ai didi

java - 在Java中对对象数组进行冒泡排序

转载 作者:行者123 更新时间:2023-12-05 01:03:15 24 4
gpt4 key购买 nike

如何对对象数组进行排序?这是我对数组进行排序的代码,我收到一个“不是语句”错误:Movie temp = movies[b];我如何声明 temp 变量,就好像它要保存电影 [b] 的确切值/引用;哪个可以是同一个数组中的三种不同对象类型中的任何一种?我是编程新手,所以如果我似乎无知,我深表歉意;如果我的问题措辞不正确,请随时纠正我或提出问题。

public static String bubbleSort(Movie[] movies) {
for (int a=1; a<movies.length; a++) {
for(int b=0; b<movies.length - a; b++) {
if (((movies[b].getTitle()).compareTo((movies[b+1].getTitle()))) > 0)
//swap movies[b] with movies[b+1]
Movie temp = movies[b];
movies[b] = movies[b+1];
movies[b+1] = temp;
}
}
}

最佳答案

当数组定义为Movie[] 时,它只能包含Movie 类型的对象。所以你只能在里面放 Movie。但是,为了通用,您应该将类​​型定义为 Object 并将数组定义为 Object[]

但是,在您的代码中,您假设您确实有 Movie 对象,因为您使用的是 Movie.getTitle()。您将无法从 Object 的引用中访问它。我建议让您的对象实现 Comparable 并使用类型 Comparable 作为数组的类型和您的临时变量。

关于java - 在Java中对对象数组进行冒泡排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9949817/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com