练习
一、选择
1、在下面代码中的(1)(2)处可以填写(多选)BC
A. int int
B. Integer Integer
C. String String
D. string string
2、下列说法中不正确的是:D
A. Comparator接口用于对自定义类进行整体排序
B. Comparator接口可以将Comparator传递给sort方法
C. int compare(T o1,T o2)比较用来排序的两个对象
D. boolean equals(Object obj)指示对象obj是否是“等于”当前对象。此方法不可以被Object类中的equals方法覆盖
3、关于Comparable接口的说法,以下哪个是错误的?B
A. Comparable位于java.lang包
B. 调用sort方法时,需要指定Comparable接口的实现类
C. Comparable接口的抽象方法是 int compareTo(T t)
D. Comparable接口还可以用于数组的排序
二、编程
1、对英文单词进行排序,效果图如下:
任务
1、给list添加元素
2、输出排序前list中的内容
3、对list中的元素进行排序
4、输出排序后list中的内容
package other;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class StringSort {
public static void main(String[] args) {
List<String> arr = new ArrayList<>();
//给list添加元素
arr.add("orange");
arr.add("tomato");
arr.add("apple");
arr.add("litchi");
arr.add("banana");
//输出排序前list中的内容
System.out.println("排序前:");
for(String str : arr) {
System.out.print(str+"\t");
}
//对list中的元素进行排序
Collections.sort(arr);
//输出排序后list中的内容
System.out.println();
System.out.println("排序后:");
for(String str : arr) {
System.out.print(str+"\t");
}
}
}
排序前:
orange tomato apple litchi banana
排序后:
apple banana litchi orange tomato
2、定义一个学生信息类,包括学号,姓名,年龄三个成员变量,然后按名字进行升序排序。(使用Comparator接口)
运行效果图:
任务: