欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

java简单的泛型示例,java示例,几个简单的泛型示例。ja

来源: javaer 分享于  点击 25523 次 点评:37

java简单的泛型示例,java示例,几个简单的泛型示例。ja


几个简单的泛型示例。

java 泛型简单应用泛型简单讲就是类型参数化。主要有以下应用

一、泛型类

/** *  * @author zxf *  * @param <T> */public class Pair<T>{    private T first;    private T second;    public Pair(){        first = null;        second = null;    }    public Pair(T first,T second){        this.first = first;        this.second = second;    }    public T getFirst() {        return first;    }    public void setFirst(T first) {        this.first = first;    }    public T getSecond() {        return second;    }    public void setSecond(T second) {        this.second = second;    }}

[Java]代码

二 泛型方法

import java.util.List;public class ArrayCompare {    public static <T extends Comparable<T>>Pair<T> minMax(List<T> strs){        if(strs == null || strs.size()==0){            return new Pair<T>();        }        T min = strs.get(0);        T max = strs.get(0);        for (int i = 0; i < strs.size(); i++) {            if(min.compareTo(strs.get(i))>0){                min = strs.get(i);            }            if(max.compareTo(strs.get(i))<0){                max = strs.get(i);            }        }        return new Pair<T>(min,max);    }}

三、泛型接口

[Java]代码

import java.util.List;public interface ArrayCompareInterface<T extends Comparable<T>> {    public Pair<T> minMax(List<T> list); }import java.util.List;/***   Double类型实现类*/public class ArrayCompareInterfaceDoubleImpl implements ArrayCompareInterface<Double> {    public Pair<Double> minMax(List<Double> list) {        if(list == null || list.size()==0){            return new Pair<Double>();        }        Double min = list.get(0);        Double max = list.get(0);        for (int i = 0; i < list.size(); i++) {            if(min.compareTo(list.get(i))>0){                min = list.get(i);            }            if(max.compareTo(list.get(i))<0){                max = list.get(i);            }        }        return new Pair<Double>(min,max);    }}import java.util.List;/***   String类型实现类*/public class ArrayCompareInterfaceStringImpl implements ArrayCompareInterface<String> {    public Pair<String> minMax(List<String> list) {        if(list == null || list.size()==0){            return new Pair<String>();        }        String min = list.get(0);        String max = list.get(0);        for (int i = 0; i < list.size(); i++) {            if(min.compareTo(list.get(i))>0){                min = list.get(i);            }            if(max.compareTo(list.get(i))<0){                max = list.get(i);            }        }        return new Pair<String>(min,max);    }}

四、java api中提供的集合框架

[Java]代码

/** * 测试类 */import java.util.ArrayList;import java.util.List;public class Test {    public static void main(String[] args) {        //测试泛型方法同时测试泛型类        List<String> strs = new ArrayList<String>();        strs.add("a");        strs.add("b");        strs.add("c");        strs.add("d");        strs.add("e");        strs.add("f");        strs.add("g");        Pair<String> minMaxStr = ArrayCompare.minMax(strs);        System.err.println("【测试泛型方法】" + minMaxStr.getFirst());        System.err.println("【测试泛型方法】" + minMaxStr.getSecond());        //测试泛型方法同时测试泛型类        List<Double> ds = new ArrayList<Double>();        ds.add(1d);        ds.add(2d);        ds.add(3d);        ds.add(4d);        ds.add(5d);        ds.add(6d);        ds.add(7d);        Pair<Double> minMaxInte = ArrayCompare.minMax(ds);        System.err.println("【测试泛型方法】" + minMaxInte.getFirst());        System.err.println("【测试泛型方法】" + minMaxInte.getSecond());        //测试泛型接口同时测试泛型类        ArrayCompareInterface<Double> aci = new ArrayCompareInterfaceDoubleImpl();        Pair<Double> minMaxImplDouble = aci.minMax(ds);        System.err.println("【测试泛型接口】" + minMaxImplDouble.getFirst());        System.err.println("【测试泛型接口】" + minMaxImplDouble.getSecond());        //测试泛型接口同时测试泛型类        ArrayCompareInterface<String> ac = new ArrayCompareInterfaceStringImpl();        Pair<String> minMaxImplStr = ac.minMax(strs);        System.err.println("【测试泛型接口】" + minMaxImplStr.getFirst());        System.err.println("【测试泛型接口】" + minMaxImplStr.getSecond());    }}
相关栏目:

用户点评