


全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
大家还记得前面的教程中,我给大家讲解了使用数组作为形式参数来构造可变长度的参数,那时我告诉大家Java中支持直接的可变长度的参数的。今天我就给大家讲解下Java中可变长度的参数的语法规则。在Java中,可变长度的参数在类型后面加三个点()来表示。如:Java代码1. staticvoidyourMethodInVarargs(int.v)上面的yourMethodInVarargs方法可以使用0个或多个参数来调用。这里的v其实是一个int数组,然后在方法内部使用v的时候和正常的数组一样使用。下面我给大家一个使用可变长度参数的例子:Java代码1. publicclassMainClass 2. /vaTest()nowusesavararg. 3. publicstaticvoidvaTest(int.v) 4. System.out.print(Numberofargs:+v.length+Contents:); 5. /Jdk1.5的增强循环 语法就和C#的foreach一样 它在底层是使用的迭代子(Iterator)循环的方式(数组除外) 支持的是数组和Collection(包括List和Set等) 也存在迭代子循环在多线程的即时失败的异常6.7. for(intx:v) 8. System.out.print(x+); 9. 10. System.out.println(); 11. 12. 13. publicstaticvoidmain(Stringargs) 14. vaTest(10);/1arg 15. vaTest(1,2,3);/3args 16. vaTest();/noargs 17. 18. 上面的代码中,我们定义了一个可变长度参数的方法vaTest,然后在其中,我们先输出了当前有几个参数被传递到方法中,然后我们用for循环将这些参数的值都输出到控制台。下面是它的运行结果。Number of args: 1 Contents: 10 Number of args: 3 Contents: 1 2 3 Number of args: 0 Contents:使用可变长度参数的时候大家需要注意一个问题,如果方法带有多个参数的时候,可变长度的参数一定要放着最后一个参数的位置,否则报错。这里我想大家 都应该可以明白为何要这样做,因为参数长度可变,如果将可变长度的参数放到前面的话,在运行时无法判断参数是固定的还是可变的。同时,根据上述讲解,我想大家也能推出一个结论,可变长度参数在一个方法内只能有一个。为什么呢?因为可变长度的参数只能是最后一个参数,如果有两个可变长度的参数的话,那么就会出现一个可变长度的参数不是最后一个参数的情况,这是不允许的。我们前面讲过方法的重载,那么是不是带有可变长度的参数的方法也可以重载呢?答案是肯定的。下面我就给出一个例子,大家自己看看。Java代码1. classMainClass 2. staticvoidvaTest(int.v) 3. System.out.print(vaTest(int.):+Numberofargs:+v.length+Contents:); 4. for(intx:v) 5. System.out.print(x+); 6. 7. System.out.println(); 8. 9. 10. staticvoidvaTest(boolean.v) 11. System.out.print(vaTest(boolean.)+Numberofargs:+v.length+Contents:); 12. 13. for(booleanx:v) 14. System.out.print(x+); 15. 16. System.out.println(); 17. 18. 19. staticvoidvaTest(Stringmsg,int.v) 20. System.out.print(vaTest(String,int.):+msg+v.length+Contents:); 21. 22. for(intx:v) 23. System.out.print(x+); 24. 25. System.out.println(); 26. 27. 28. publicstaticvoidmain(St
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 茶陵教师真题试卷及答案
- 2025年会考物理试卷真题及答案
- 微软售前笔试题目及答案
- 化学实验现象描述准确性训练试题
- 化学创新精神(探索、创造)培养试题
- 古代打仗考试题及答案
- 2025年文学常识高考试题及答案
- 都匀一中模拟考试题目及答案
- 2025年高二物理下学期校本课程结业试卷
- 工人基础考试题目及答案
- 经腋窝无充气腔镜甲状腺手术
- 高考地理一轮复习说真题比赛课件根植核心素养提升解题能力-以2024年广东地理高考“四川仁寿县牛角寨”题组为例
- DB11 2076-2022 民用建筑节水设计标准
- 第11课《牛郎织女(二)》同步练习(含答案)
- GB/T 17727-2024船用法兰非金属垫片
- 静电喷涂合同范本
- 抖音来客商家门店经营
- 食堂厨师团队外包项目实施方案
- 2024年苏州职业大学高职单招(英语/数学/语文)笔试历年参考题库含答案解析
- 高中新外研版单词总表(必修123+选修1234)
- 小区业主改动入户门申请书范本
评论
0/150
提交评论