|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
再举这样一个例子:如果你想对一个数字取绝对值,你会怎么做呢?java的做法是intc=Math.abs(-166);而ruby的做法是:c=-166.abs。呵呵,这就看出了java与ruby的区别。j2se变长参数(Varargs)
与泛型一样,变长参数是C++中有而Java中没有的一种言语特征,在已往假如我们想向一个函数传送可变数目的函数,就必需起首将这些参数放进一个数组中,然后将数组传送给函数。就好像上面所作的一样:
Object[]arguments={640,"kb","anybody","BillGates"};
Stringresult=MessageFormat.format(
"{3}:{0,number,integer}{1}oughttobeenoughfor{2}",
arguments);
在J2SE5.0中,参数仍旧是被放进一个数组中传给对应的办法,可是分歧的是,你不再必要手动的创立数组,而是只必要将那些参数排列出来,其他的事情由假造机替你完成。以是如今我们能够如许写:
Stringresult=MessageFormat.format(
"{3}:{0,number,integer}{1}oughttobeenoughfor{2}",
640,"kb","anybody","BillGates");
我们经由过程一个示例函数来讲明利用变长参数函数的界说。这个函数打印出一团体养的几条狗的名字。
privatevoidprintDogNames(String...dogs)
{
System.out.println("Ihave"+dogs.length+"dogs:");
for(Stringdogname:dogs)
{
System.out.println(dogname);
}
}
现实上变长参数dogs是一个数组。
一个函数的参数中只能有一个变长参数,以是相似上面的界说是分歧法的:
privatevoidprintDogNames(String...dogs,float...dogage)
假如决意把函数参数设置为可变长度的,你必需想到如许一种情形,就是挪用的程序极可能会不给你传任何的参数,这个时分作为参数的数组length为0,而这在语法上是完整正当的,以是你必需在函数界说中思索到这类情形。
你希望java的IDE整合。这个是没有必要的,重要的是你理解java有多深以及怎么组织你的代码,即使没有IDE,代码照样能够编译运行的。 |
|