`
wankunde
  • 浏览: 158502 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

JDK5-泛型

 
阅读更多

自己随便写的两个例子,可能说的不算全面吧!

 

import java.util.Hashtable;
public class Test1<K,V> {
	public Hashtable<K,V> table = new Hashtable<K, V>();
	public void put(K k,V v)
	{
		table.put(k, v);
	}
	public V get(K k)
	{
		return table.get(k);
	}
	
	public static void main(String[] args) {
		Test1<String, String> t = new Test1<String,String>();
		t.put("name", "How to learn Java");
		System.out.println(t.get("name"));
	}
}
/**
 * 1.泛型:创建一个用类型作为参数的类 。对于类的参数是可变的
 * 2.参数范围的缩减可以使用 public class Test1<K extends String,V extends Integer> 方式确定,参数的范围分别为String 类型和Integer 类型
 * 
*/

 

import java.util.ArrayList;
import java.util.List;

public class Test2 {

	public static void main(String[] args) {
		/********************************************/
		List<String> list = new ArrayList<String>();
		list.add("David");
		list.add("Jack");
		list.add("XiaoQiang");
		
		printList(list);
		
		List<?> list2 = list;
		printList(list2);
		
		List<People> list3 = new ArrayList<People>();
		list3.add(new People("David","man",18,2400));
		list3.add(new People("Wankun","man",25,5800));
		list3.add(new People("Zhangsan","woman",10,400));

		printList(list3);
	}
	
	/* 在函数的参数中,使用通配符来表示不同的数据类型*/
	public static void printList(List<?> l)
	{
		for(Object o:l)
		{
			System.out.println(o);
		}
	}
}

class People
{
	String name;
	
	String sex;
	
	int age;
	
	double salary;
	
	@Override
	public String toString() {
		return name+":"+" is "+sex+",He is "+age+".He's salary is "+salary;
	}
	
	public People(String name,String sex,int age,double salary) {
		this.name = name;
		this.sex = sex;
		this.age = age;
		this.salary = salary;
	}
}

/**
 * 1.JDK5中的集合论类使用了泛型,所以你可以根据你要使用的数据类型,选择相应类型的集合存储数据。
 * 	在集合处理数据的时候会自动进行转换。
 * 2.集合中运行使用通配符,比如在某函数的参数中,你不知道集合中是哪种类型的数据,可以使用?代表数据类型
 */
 

 

分享到:
评论

相关推荐

    java经典教程-JDK1.5的泛型实现

    java经典教程-JDK1.5的泛型实现

    介绍 JDK 5中泛型

    到目前为止,Java 类库中泛型支持存在最多的地方就是集合框架。就像容器类是 C++ 语言中模板的主要动机一样改善集合类的类型安全是 Java 语言中泛型的主要动机。集合类也充当如何使用泛型的模型,因为它们演示了泛型...

    JDK1.5的泛型实现.pdf

    JDK1.5的泛型实现.pdf

    Jdk1_5中的新特性 --泛型 (详细版)

    容器不能放基类型不好,接着说泛型没用。而恰恰Jdk1.5中解决了这些问题,所以感叹之余,把这篇文章改一下,详细的说说泛型

    java-泛型总结【从入门到项目总结】

    关于java泛型的总结: 从入门介绍到项目使用的实际经验归纳总结得出! 从jdk5到jdk8!

    jdk-7u5-windows-i586.exe

    Java是一种广泛使用的计算机编程语言,拥有跨平台、面向对象、泛型编程的特性,广泛应用于企业级Web应用开发和移动应用开发。

    JDK1.5的泛型实现.zip

    JDK1.5的泛型实现

    JDK1.5的泛型实现

    JDK1.5的泛型实现

    java-jdk-8u231-windowsx64修复bug.rar

    本版本修复 JDK的Bug1–数组切割 JDK的Bug2–三元运算符 JDK中不算Bug的Bug–ArrayList可通过构造函数传入非指定泛型的List并在get时出错

    Jdk15泛型的实现

    Jdk15泛型的实现

    jdk5.zip_java 泛型_jdk5 泛型_泛型

    java中泛型说明与应用,有助于更好理解泛型的功能

    JDK 1.5的泛型實現(Generics in JDK 1.5)

    JDK 1.5的泛型實現(Generics in JDK 1.5)5 新增自動 boxing(封箱)和 un-boxing(拆箱)特性,也就是在必要時刻自動將數 值轉為外覆物件,或將外覆物件轉為數值。有了這項特性,我們可以將圖 3改寫 為圖 4,...

    jdk-7-linux-x64.rpm

    Java是一种广泛使用的计算机编程语言,拥有跨平台、面向对象、泛型编程的特性,广泛应用于企业级Web应用开发和移动应用开发。

    jdk-6u39-windows-x64-demos.zip

    JDK(Java Development Kit)是Sun Microsystems针对Java开发员的产品。自从Java推出以来,JDK已经成为使用最广泛...从SUN的JDK5.0开始,提供了泛型等非常实用的功能,其版本也不断更新,运行效率得到了非常大的提高。

    JDK1.5新特性泛型_深入研究.doc

    JDK1.5新特性泛型_深入研究JDK1.5新特性泛型_深入研究JDK1.5新特性泛型_深入研究

    jdk-7u40-linux-x64.tar.gz

    Java是一种广泛使用的计算机编程语言,拥有跨平台、面向对象、泛型编程的特性,广泛应用于企业级Web应用开发和移动应用开发。

    jdk-7u9-linux-x64.tar.gz

    Java是一种广泛使用的计算机编程语言,拥有跨平台、面向对象、泛型编程的特性,广泛应用于企业级Web应用开发和移动应用开发。

    jdk-7u4-linux-x64.rpm

    Java是一种广泛使用的计算机编程语言,拥有跨平台、面向对象、泛型编程的特性,广泛应用于企业级Web应用开发和移动应用开发。

    jdk1.5的泛型实现

    java编程的泛型实现

Global site tag (gtag.js) - Google Analytics