简介

泛型类 确保某个类一定包含某个接口函数

code

package cn;
import cn.Pair;
import java.time.*;

class ArrayAlg2{
	public static <T extends Comparable> Pair<T> minmax(T[] a){
		if(a == null || a.length == 0){
			return null;
		}
		T min = a[0];
		T max = a[0];
		for(int i = 1; i < a.length; i++){
			if(min.compareTo(a[i]) > 0) min = a[i];
			if(max.compareTo(a[i]) < 0) max = a[i];
		}
		return new Pair<>(min, max);
	}
}

public class PairTest2 {
	public static void main(String[] args){
		LocalDate[] birthdays = {
				LocalDate.of(1906,  12,  9),
				LocalDate.of(1815, 12, 10),
				LocalDate.of(1903, 12, 3),
				LocalDate.of(1910,  6, 22)
		};	
		Pair<LocalDate> mm = ArrayAlg2.minmax(birthdays);
		System.out.println("min = " + mm.getFirst());
		System.out.println("max = " + mm.getSecond());
	}
}

Q&A

  1. 其中 T extends Comparable
    表示T类型一定要有Comparable 接口。
posted on 2020-09-12 20:51  HDU李少帅  阅读(92)  评论(0编辑  收藏  举报