gpt4 book ai didi

java - 对任何类型的对象进行排序,java

转载 作者:行者123 更新时间:2023-11-29 08:04:42 24 4
gpt4 key购买 nike

我试图更改以下代码中的排序方法以对任何类型的对象进行排序,而不仅仅是字符串,但有点难过,欢迎大家提出建议。

class SortNames {

static void sort(String[] s) {
for (int i = 0; i<s.length; i++) {
for (int j = i+1; j < s.length; j++) {
if (s[i].compareTo(s[j])>0) {
String t;
t = s[i]; s[i] = s[j]; s[j] = t;
}
}
}
}

public static void main(String[] args) {
String[] names = {"Pete","Jill","May","Anne","Tim"};
sort(names);
for (int i=0; i<names.length; i++)
System.out.println(names[i]);
}
}

最佳答案

SortNames进入SortNames<T extends Comparable<? super T>> , 并更改 String[]T[] ,这就是 Collections.sort() 工作:

public class SortNames<T extends Comparable<? super T>> {
public void sort(T[] s) {
for (int i = 0; i<s.length; i++) {
for (int j = i+1; j < s.length; j++) {
if (s[i].compareTo(s[j])>0) {
T t = s[i]; s[i] = s[j]; s[j] = t;
}
}
}
}
// or static <T extends Comparable<? super T>> void, for static methods
}

关于java - 对任何类型的对象进行排序,java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12054287/

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