对泛型的理解一直不得要领。刻意练习,实现了一次泛型的冒泡排序
按照TDD的说法先写测试
package 排序算法;
import org.junit.jupiter.api.Test;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import static org.junit.jupiter.api.Assertions.*;
/**
* @author 邓天天
* @date 2021/3/22 20:57
*/
class SortTest {
private String[] values = new String[]{"A","s","6","2","4","6","8"};
private String[] result = new String[]{"2","4","6","6","8","A","s"};
@Test
void testBubbleSort() {
List<String> integerList = Arrays.asList(values);
Sort.bubbleSort(integerList);
List<String> integerList1 = Arrays.asList(result);
assert integerList1.equals(integerList);
}
}
排序实现代码
package 排序算法;
import java.util.List;
/**
* @author 邓天天
* @date 2021/3/22 20:56
*/
public class Sort {
public static <T extends Comparable<T>> void bubbleSort(List<T> list) {
T temp;
for (int i = 0; i < list.size(); i++ ) {
for (int j=0; j<list.size()-1-i; j++) {
if (list.get(j).compareTo(list.get(j+1)) > 0) {
temp = list.get(j);
list.set(j,list.get(j+1));
list.set(j+1,temp);
}
}
}
}
}