java泛型Generic(jdk1.5)

版权声明:转发请标明出处,谢谢! https://blog.csdn.net/Myuhua/article/details/82380691

起因:JDK1.4以前类型不明确:

1.装入集合的类型都被当作Object对待,从而失去自己的实际类型。

2.从集合中抽取时往往需要转型,效率低,容易产生错误。

解决办法:

在定义集合的时候同时定义集合中对象的类型。

1.可以在定义Collection的时候指定。

2.可以在循环时用Iterator指定

建议在上面两个地方都指定。

举例:

import java.util.*;

/**
 * 说明:泛型释例(在写程序时用到集合的部分尽量使用泛型)
 * 看api文档的时候只要类后面带尖括号的就可以用泛型
 * 如:class ArrayList<E>、class LinkedList<E>、interface Comparable<T>
 * @author huayu
 * @date 2018/9/4 12:07 PM
 */
public class BasicGenericDemo {
    public static void main(String[] args) {
        List<String> list = new ArrayList();
        list.add("yu");
        list.add("hua");
        for (int i = 0; i < list.size(); i++) {
            //不使用泛型的话这边需要强制转换
            String str = list.get(i);
            System.out.println(str);
        }
        Collection<String> collection = new HashSet<String>();
        collection.add("yu");
        collection.add("hua");
        for (Iterator<String> iterator = collection.iterator(); iterator.hasNext(); ) {
            //不使用泛型的话这边需要强制转换
            String str = iterator.next();
            System.out.println(str);
        }


    }
}

结果
yu
hua
hua
yu

好处:增强程序的可读性和稳定性。

若有问题欢迎大家与我互动交流,可评论,可留言,以后每周我会坚持至少更新一篇博客文章,喜欢的朋友可以加一下关注。

猜你喜欢

转载自blog.csdn.net/Myuhua/article/details/82380691