Java中的泛型介绍:

  起因:

    1. JDK 1.4 以前类型不明确:

      ① 装入集合的对象被当作 Object 类型对待,从而失去了自己的原有类型;

② 从集合中取出时往往需要转型,效率低下,并且容易产生错误.

解决办法:

           2. 解决办法

      ① 在定义集合的时候,同时定义集合中对象的类型;

② 可以在定义 Collection 的时候指定,也可以在循环时用 Iterator 指定.

好处:

    3. 增强程序的可读性与稳定性.

Demo_1:

import java.util.*;
class MyName implements Comparable<MyName>{
private int age;
public MyName(int age) {
this.age = age;
} @Override
public int compareTo(MyName mn) {
if(this.age>mn.age){
return 1;
}else if(this.age<mn.age){
return -1;
}else {
return 0;
}
}
}
public class Test {
public static void main(String[] args) {
ArrayList<String> as = new ArrayList<String>();
as.add("aa");
as.add("bb");
as.add("cc");
as.add("dd");
for(int i=0;i<as.size();i++){
String sa = as.get(i);
System.out.print(sa+" "); // 输出:aa bb cc dd
}
System.out.println();
HashSet<String> hs = new HashSet<String>();
hs.add("a1");
hs.add("a2");
hs.add("a3");
hs.add("a4");
hs.add("a5");
for(Iterator<String> it=hs.iterator();it.hasNext();){
String sh = it.next();
System.out.print(sh+" "); // 输出:a1 a2 a3 a4 a5
}
System.out.println();
MyName m1 = new MyName(12);
MyName m2 = new MyName(25);
System.out.println(m1.compareTo(m2)); // 输出:-1
}
}

Demo_2:

import java.util.*;
public class Test {
public static void main(String[] args) {
HashMap<String, Double> mp = new HashMap<String, Double>();
mp.put("one", 112.365);
mp.put("two", 2.458);
mp.put("three", 126.258);
System.out.println(mp.size()); // 输出:3
System.out.println(mp.containsKey("two")); // 输出:true
if(mp.containsKey("three")){
Double i = mp.get("three"); // get Value
System.out.println(i); // 输出:126.258
}
}
}

  

       

JDK中的泛型的更多相关文章

  1. C++模拟实现JDK中的ArrayList和LinkedList

    Java实现ArrayList和LinkedList的方式采用的是数组和链表.以下是用C++代码的模拟: 声明Collection接口: #ifndef COLLECTION_H_ #define C ...

  2. Java 中的泛型详解-Java编程思想

    Java中的泛型参考了C++的模板,Java的界限是Java泛型的局限. 2.简单泛型 促成泛型出现最引人注目的一个原因就是为了创造容器类. 首先看一个只能持有单个对象的类,这个类可以明确指定其持有的 ...

  3. java中的泛型(转)

    什么是泛型? 泛型(Generic type 或者 generics)是对 Java 语言的类型系统的一种扩展,以支持创建可以按类型进行参数化的类.可以把类型参数看作是使用参数化类型时指定的类型的一个 ...

  4. Java开发知识之Java中的泛型

    Java开发知识之Java中的泛型 一丶简介什么是泛型. 泛型就是指泛指任何数据类型. 就是把数据类型用泛型替代了. 这样是可以的. 二丶Java中的泛型 Java中,所有类的父类都是Object类. ...

  5. 扒一拔:Java 中的泛型(一)

    目录 1 泛型 1.1 为什么需要泛型 1.2 类型参数命名规约 2 泛型的简单实用 2.1 最基本最常用 2.2 简单泛型类 2.2.1 非泛型类 2.2.2 泛型类的定义 2.2.3 泛型类的使用 ...

  6. Java中的泛型 --- Java 编程思想

    前言 ​ 我一直都认为泛型是程序语言设计中一个非常基础,重要的概念,Java 中的泛型到底是怎么样的,为什么会有泛型,泛型怎么发展出来的.通透理解泛型是学好基础里面中非常重要的.于是,我对<Ja ...

  7. JDK中枚举的底层实现

    前提 上一篇文章复习介绍了JDK中注解的底层实现,跟注解一样比较常用,但是底层实现比较神秘的还有枚举类型.趁着国庆假期的最后两天,把JDK中枚举的底层实现也进行一次探究. 通过例子查找本质 在探究JD ...

  8. java中的泛型2--注意的一些问题和面试题

    前言 这里总结一下泛型中需要注意的一些地方和面试题,通过面试题可以让你掌握的更清楚一些. 泛型相关问题 1.泛型类型引用传递问题 在Java中,像下面形式的引用传递是不允许的: ArrayList&l ...

  9. Java中的泛型、枚举和注解

    1.泛型: 一.为什么要有泛型(Generic)?1.解决元素存储的安全性问题任何类型都可以添加到集合中:类型不安全2.解决获取数据元素时,需要类型强转的问题读取出来的对象需要强转:繁琐可能有Clas ...

随机推荐

  1. 一、PHP基础-安装PHP集成环境

    目录 PHP运行集成环境下载 phpStudy集成环境安装 XAMPP集成环境安装 WampServer环境安装 作者:吴耀田  个人博客:http://www.cnblogs.com/isaacwy ...

  2. Hadoop mapreduce框架简介

    传统hadoop MapReduce架构(老架构)   从上图中可以清楚的看出原 MapReduce 程序的流程及设计思路:   1.首先用户程序 (JobClient) 提交了一个 job,job ...

  3. IPV6路由技术

    OSPFV3 一.OSPFv3概述:协议号89 1.概念: OSPFv3是ospf(开放式最短路径优先)版本3的简称,主要提供对IPV6的支持,遵循的标准为RFC2740(OSPF for IPv6) ...

  4. 北京Uber优步司机奖励政策(3月8日)

    滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://www.cnblogs.com/mfry ...

  5. 成都Uber优步司机奖励政策(1月8日)

    1月8日 奖励政策 滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://www.cnblog ...

  6. mavn打外部配置jar包依赖

    https://blog.csdn.net/pei19890521/article/details/80984707

  7. linux-flock文件锁之实际运用

    vi test.sh #! /bin/bash echo "Hello World" touch test.lock #随便命名 [root@localhost ~]# flock ...

  8. PHP调用wsdl接口实例化SoapClient抛出异常

    异常:Message:SOAP-ERROR: Parsing WSDL: Couldn't load from 'http://*****?wsdl' : failed to load externa ...

  9. go通过第三方库 mahonia gbk 转utf8

    go get github.com/axgle/mahonia dec := mahonia.NewDecoder("GBK")ret:=dec.ConvertString(res ...

  10. [JSON].toXMLString()

    语法:[JSON].toXMLString() 返回:[String] 说明:将[JSON]实例转换成XML格式结果. 示例: <% jsonString = "{div: 'hell ...