第2关 泛型的使用
package step7;
/***************请勿改动Container类代码*************/
class Containers<T> {
private T t;
public void set(T t){
this.t = t;
}
public T get(){
return t;
}
}
/***************请勿改动Container类代码*************/
public class Solution<T> {
public Containers<T> initContainers(T t){
// 请在下面的Begin...End间编写你的代码
/*************Begin***************/
//(1)声明Containers对象
Containers<T> containers = new Containers<T>();
//(2)用形参初始化Containers对象
containers.set(t);
//(3)返回Containers对象
return containers;
/**************End**************/
}
}
第3关 泛型类的声明和使用
package step8;
import java.lang.reflect.Array;
import java.lang.reflect.Field;
import java.lang.reflect.ParameterizedType;
import java.lang.reflect.Type;
import java.math.BigDecimal;
import java.util.*;
//请在下面的Begin...End间编写代码
/**************Begin**************/
//(1)声明泛型类
public class Solution <T>{
private T var;
public void setVar(T var) {
this.var = var;
}
public T getVar() {
return var;
}//(2)声明泛型变量var
//(3) 定义泛型方法setVar
//(4)定义泛型方法getVar
}
/**************Begin**************/
第4关 泛型数组
package step9;
public class Solution {
// 请在下面的Begin...End间编写代码
/**********************Begin***********************/
//定义非静态的泛型方法copy,用于把泛型源数组a(有值)拷贝到泛型目标数组b(无值)中
//copy方法无需返回值
public static <T> void copy(T[] src, T[] dest) {
if (src == null || dest == null || src.length != dest.length) {
throw new IllegalArgumentException("Invalid arguments");
}
System.arraycopy(src, 0, dest, 0, src.length);
}
/**********************End***********************/
}