码迷,mamicode.com
首页 > 其他好文 > 详细

【DataStructure】The description of generic collections

时间:2014-07-15 12:45:00      阅读:253      评论:0      收藏:0      [点我收藏+]

标签:structure   java   data   

 In this blog, generic collections will be talked about  in details.  In the past bacause of shortage of generic argument,  less importance has been attached to the this module. Just now after reading the chapter about this knowledge, I gradually realized that they are so useful in the pactice, especially desgin the system achitect. Now make a summary about generic collections.

First, use the type argument 

package com.albertshao.ds.generic;

public class EnumArgument {

	enum Week {
		Mon, Tus, Wed, Thu, Fri, Sta, Sun
	}
	
	public static void main(String args[])
	{
		Pair<Integer, Week> pairs = new Pair<Integer, Week>(2, Week.Mon);
		System.out.println(pairs);
	}
}

class Pair<S, T> {
	private S first;
	private T second;

	public Pair(S first, T second)
	{
		this.first = first;
		this.second = second;
	}
	
	public S getFirst() {
		return first;
	}

	public void setFirst(S first) {
		this.first = first;
	}

	public T getSecond() {
		return second;
	}

	public void setSecond(T second) {
		this.second = second;
	}
	
	public String toString()
	{
		return "("+first + "," + second+")";
	}
}

/**
 * output:(2,Mon)
 */
Second, use the generic methods

   In addition to generic types, type parameters can also be used to define generic methods, identified by the generic parameter specifier<T> placed in front of the return type. 

package com.albertshao.ds.generic;

public class TestPrint {

	public static void main(String[] args) {
		String[] weeks = new String[] { "Mon", "Tus", "Wed" };
		print(weeks);
	}

	static <E> void print(E[] a) {
		for (E e : a) {
			System.out.println(e);
		}
	}
}

/*
 * output:
 * Mon
 * Tus
 * Wed
 * 
 */

Third , use generic wildcards

The symbol ?can be used as a wildcard, in place of a generic variable. It stands for “unknown type,” and is called the wildcard type.

package com.albertshao.ds.generic;

import java.util.Arrays;
import java.util.Collection;
import java.util.List;

public class TestWildCards {

	public static void main(String[] args) {
		List<String> strList = Arrays.asList("Fri", "Sat", "Sun");
		print(strList);
	}

	static void print(Collection<?> c) {
		for (Object o : c) {
			System.out.printf("%s ", o);
		}
		System.out.println();
	}
}

// output: Fri Sat Sun 







【DataStructure】The description of generic collections,布布扣,bubuko.com

【DataStructure】The description of generic collections

标签:structure   java   data   

原文地址:http://blog.csdn.net/sxb0841901116/article/details/37781563

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!