一、实验目的
熟悉并掌握泛型方法的定义与使用。
二、预习内容
I/O的属性及应用;
三、实验设备与环境
1.Java开发包(JDK);
2.开发软件 (IDEA);
四、实验内容
1.定义一个泛型方法addOp(),形参接收的类型为泛型数组。在方法体内,为传入的数组进行累加或者拼接。如传入为Integer[]则累加,传入String[]则拼接字符串,其他类型的数组不做处理;通过flag标记传入的数组类型,使用switch(flag),输出拼接或者累加的结果。
2.参考代码如下
package Shiyan.duizhan.fangxing;
public class Fanxing1 {
public static <T>void addOp(T[] array){
int flag=0,sum=0;
String s="";
for(int i=0;i<array.length;i++){
if(array instanceof Integer[]){
flag=1;
Integer []array1=(Integer[]) array;
sum=sum+array1[i];
} else if (array instanceof String[]) {
flag=2;
s=s + " "+array[i];
}else{
flag=3;
}
}
switch (flag){
case 1:
System.out.println("sum="+sum);
break;
case 2:
System.out.println("Str="+s);
break;
case 3:
System.out.println("传入的数组非整型或字符型");
}
}
public static void main(String[] args) {
Integer [] intArry = {1,2,3,4,5,6,7,};
String[] strArry = {"i","love","you"};
Float[] floatArry = {1.2f,1.4f,6.7f};
addOp(intArry);
addOp(strArry);
addOp(floatArry);
}
}
3.运行结果如下