黑马程序员技术交流社区
标题:
参数传递以及循环的问题
[打印本页]
作者:
刘文飞
时间:
2012-10-17 11:04
标题:
参数传递以及循环的问题
代码如下,问题在注释中
————————————————————————————————————————————————————
public class GenericsDemo05{
public static void main(String args[]){
Integer i[] = fun1(1,3);//返回泛型数组
fun2(i);
}
public static <T> T[] fun1(T...arg){//这样表示接收可变参数?
return arg;
}
public static <T> void fun2(T parm[]){//输出
for(T t:parm){//这种循环方式没看明白
System.out.print(t + ",");
}
}
}
作者:
王虎
时间:
2012-10-17 11:31
public static <T> T[] fun1(T...arg){//这样表示接收可变参数?
return arg;
}
这是JDK1.5以后的新特性,参数列表里可以定义多个参数,方法在调用时当然可以传多个参数
for(T t:parm){//这种循环方式没看明白
System.out.print(t + ",");
}
这个也是JAVA1.5的一个新特性叫做增强for循环,作用和最初这种写法for(初始值;执行条件;步长) 都是用来遍历的
T -----------类型
t------------自己定义的名字,随便起
parm-----------------定义好的引用名T[] parm或者按你代码里的写法T parm[]
作者:
陈军
时间:
2012-10-17 15:47
本帖最后由 陈军 于 2012-10-17 15:48 编辑
就是多了泛型,只要你看到参数中有...那肯定就是可变参数。可变参数的意思是说。
我这个参数,你可以传也可以不传。不过不传就没意义了。
循环。
T就是你要接收的泛型类型。你的第3个方法
public static <T> void fun2(T parm[]){//输出
for(T t:parm){//这种循环方式没看明白
System.out.print(t + ",");
}
}
表示接收的参数是T类型的数组,数组名字为 parm。 每一个数组元素都是T类型
下面的循环就是数组的遍历。而且这个循环是高级for循环。
高级for循环在数组遍历时的格式就是:
for(元素类型 你指定的变量名:数组名){你要执行的操作}
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2